Использование express для отображения представлений в Angular 10?

#node.js #angular #express

#node.js #angular #экспресс

Вопрос:

Можно ли использовать express для отображения представлений в Angular 10 вместо использования Angular Router? Моя команда находится в процессе обновления с Angular.js к Angular 10, и мы использовали express с dust.js механизм создания шаблонов для отображения представлений в Angular.js приложение.

Текущая логика такова: загрузите все отдельные страницы (html, css и js-файлы) в файловую систему -> при запуске маршрута страницы извлеките эти файлы -> вставьте содержимое в dust.js шаблоны -> визуализация шаблонов на стороне сервера

Наша цель — рендерить Angular pages на стороне сервера с возможностью быстрого внесения изменений в определенные страницы (путем изменения отдельных файлов в файловой системе) без необходимости перестраивать все приложение каждый раз, когда требуется изменение. Можно ли продолжать делать это в новом приложении Angular или это будет плохой практикой?

Комментарии:

1. Это не связано напрямую, но как часто вам нужно менять эти поля и насколько велики изменения, вы просто меняете статические тексты или меняете всю структуру?

2. Angular предназначен для создания одностраничного приложения с использованием маршрутизатора angular для маршрутизации страниц. Использование express для каждого маршрута было бы огромными накладными расходами.

3. @ХристиянХристов Мы меняем изображения / текст / порядок, но вся структура в основном остается прежней. Эти изменения происходят примерно один-два раза в месяц.

4. @GetOffMyLawn Я вижу. Вы бы сказали, что лучше не использовать Angular для нашего варианта использования? Меня беспокоит то, что команда уже знакома с Angular и старым angular.js шаблоны, по крайней мере, в некоторой степени можно использовать повторно, так что некоторые накладные расходы были бы приемлемым компромиссом.

5. Способ работы angular заключается в том, что он объединяет весь проект как один. Итак, для каждого запроса страницы вы все равно будете отправлять все приложение пользователю, так зачем тратить время на маршрутизацию на сервере… Если вы хотите отправлять каждую страницу пользователю как отдельную страницу, вам нужно создавать отдельные приложения angular для каждой страницы и связывать их по отдельности, что было бы затруднительно для управления, и тогда вы потеряете возможность совместного использования компонентов.