Добрый день.
Хочу задать один вопрос теоретического характера.
Скажите, написание одностраничных приложений с бэкендом на Drupal 8 - это вообще хорошая идея или не очень ?
То есть, я имею в виду, чтобы клиентская часть работала на AngularJS, ReactJS или еще чем-то подобном, а за бэкенд отвечал Drupal 8.
Есть ли у вас опыт написания таких приложений ?
И если это идея хорошая, не могли бы вы кинуть ссылки (при наличии таковых) на материалы, где бы это хорошо разбиралось ?
Версия Drupal:
8.x
Вопрос задан 23.10.2016 - 09:20
Ответы
Это не очень хорошая идея. Смысл друпала это формы, темы, блоки, представления. В SPA всего этого не будет, зато будет бутстрап пол секунды и мегабайты памяти впустую.
Ответ дан 23.10.2016 - 23:40
Тут вопрос что считать SPA. Некоторые считают что ту же медузу https://meduza.io/ (фронт на реакте, там нет реальной перезагрузки страниц) можно. И тогда норм -- для контентных ресурсов вполне подходит.
adubovskoy, хочешь сказать, что бэкенд медузы на друпале?
Включей REST и делай свой сайт отдельно.
И возможно таки хорошая идея при наличии только фронтэндщика, а все остальное можно в друпал ручками наконфигурировать.
у них там зоопарк (nodejs, go, python), но в основе ruby. Я про то что для контентного ресурса друпал вполне подойдет как бекенд для react/angular/vue/etc. 8й так вообще. И это вполне можно (хотя имхо с натяжкой) назвать SPA.
То есть, я так понимаю, "контентный сайт" - это сайт, на который заходишь, чтобы прочитать информацию. Какой-то интерактив со стороны пользователя там сведен к минимуму. И в этом случае Drupal помимо функций админки для клиента просто отдает json-наборы данных, которые уже темизируются и отображаются целиком средствами клиента. Ну и рутинг (переход между пунктами меню, переход по внутренним ссылкам и т.д.) также реализуется средствами клиента (react, angular и т.д.). Так ?
Так. И в этом случае с друпалом вы экономите оч много времени на админке, моделях и т.п.
Александр, а вы не знаете, существуют ли решения по синхронизации меню Drupal и рутов того же Ангуляра ?
То есть, чтобы ангуляр знал о меню Drupal и мог адекватно работать с его путями, а не так, чтобы меню сайта и переходы по его пунктам нужно было целиком задавать на уровне ангуляра независимо от Друпала.