Подтвердить что ты не робот

Angular2 - Angular -CLI - исключить папки из автоматических наблюдателей сборки

angular -cli beta.16, используя webpack. проект, созданный с помощью CLI

Привет,

Это моя структура проекта:

- server - server.js - src - app - compoents & co - assets - index.html

Я использую server.js для обработки запроса на загрузку, исходящего из одного из моих компонентов angular. Файл загружен, и я хочу поместить его в каталог активов, поэтому я могу использовать его после использования в приложении.

Проблема заключается в том, когда я выполняю такую ​​работу (выгружая файл в папках с ресурсами), которые делают мой angular -cli для повторного создания всего приложения (потому что он обнаруживает изменения в моих файлах), поэтому приложение перезагружается в браузере, и я не могу его использовать.

Есть ли способ исключить папки somes (для меня папка "assets" ) для задачи "сборки часов" CLI? поэтому CLI не создает приложение еще раз, когда я помещаю в него новый файл?

Спасибо, ребята!

4b9b3361

Ответ 1

Я не верю, что есть. Однако вы думаете об этом назад, или, может быть, я не понял вопроса, учитывая, что существует так много стимулов.

Я хочу поместить его в каталог активов, поэтому я могу использовать его после в приложении.

Это не складывается. Что вы имеете в виду использовать в приложении? У вас уже есть эти файлы в приложении, вы сами сказали:

Я использую server.js для обработки запроса на загрузку, исходящего из одного из моих компонентов angular.

.. из одного из моих компонентов angular.


Посмотрите на сценарий, в котором вы можете делать то, о чем просите. Файлы загружаются в активы. Что теперь?

Webpack-dev-сервер обслуживает файлы из памяти. С помощью --watch он добавляет наблюдателей, чтобы он знал, когда файл изменяется, и он обновляет свою память. Если файлы не изменились (или в воображаемом мире, где каталог не просматривается, как вы просили), то нет ничего нового в обслуживании. Другими словами, вы не сможете иметь что-то вроде src="assets/myNewlyUploadedAsset.png" в любом месте вашего приложения, оно вернет 404.


Я предполагаю, что вы хотите это сделать, потому что на вашем server.js вы внесли некоторые изменения в эти файлы. Итак, каков ваш вариант для получения этих изменений?

Вы храните его где-то еще, чем в активах. Это то, что вы должны делать, потому что папка вашего приложения действительно не является местом для загрузки пользовательского контента.

Ответ 2

Вы можете добавить список исключенных файлов внутри себя tsconfig.json

{
 "exclude": [
   "node_modules",
   "./pathToYourFile"
 ]
}

в вашем случае это будет примерно так

{
 "exclude": [
   "node_modules",
   "./server/server.js"
 ]
}