У меня есть уже существующий проект, который в настоящее время использует gulp.
Ключевые библиотеки/фреймворки/языки:
- MongoDB — Мангуст
- AngularJS — с ui-router, также с использованием ngClassify
- ExpressJS — с паспортом
- NodeJS
- Джейд
- Кофескрипт
- Sass — формат «.sass»
- JPG/PNG
В настоящее время все просматривается с помощью перезагрузки в реальном времени, минимизируется с помощью uglify и сжимается с помощью gzip. Мои угловые фрагменты html-представления/директивы отправляются в js-файл кеша шаблона. Даже изображения уменьшены с помощью image min.
Одностраничное приложение имеет очень модульный дизайн, в приложении есть несколько «страниц», каждая страница имеет определенное использование (например, страница профиля), используя ui-route для вложенных представлений. Не все пользователи будут использовать каждую страницу. Поэтому я решил перейти к WebPack, где каждая «страница» является модулем. Цель этого приложения — быть максимально реактивным. С возможным небольшим временем загрузки при переключении страницы/модуля, на котором они находятся.
В моей текущей структуре проекта есть каталоги src и dist, в каждом из которых есть папка сервера и клиента. каталог списка, конечно, можно безопасно удалить при каждой сборке. В настоящее время у меня нет необработанных файлов js или необработанного html (кроме gulpfile.js, для которого просто требуется мой gulpfile.coffee), все предварительно обрабатывается gulp и все.
Итак, вот мои вопросы:
- Заменяю ли я большую часть моего gulpfile веб-пакетом и позволяю веб-пакету обрабатывать все (в чем преимущество этого). Или я создаю промежуточную папку (выход gulp), а затем запускаю веб-пакет в этой папке (имея дело только с мини-файлами js/css/html). По сути, зная мои библиотеки/фреймворки и мою ситуацию, как бы вы структурировали процесс сборки?
- Можете ли вы использовать файл app.coffee ngClassify в качестве точки входа? Или его нужно предварительно собрать. (Если можно, то как?)