Текущий правильный ответ:
Команда добавила поддержку копирования определенных файлов как есть в выходную папку ( dist
по умолчанию) в более поздней версии Angular CLI (будет бета-версия 17 или 19 - это было в последних выпусках 1.x уже много лет).
Вы просто добавляете его в массив, angular-cli.json
например:
{
...
"Программы" [
{
"корень": "SRC",
"активы": [
"активы",
"web.config"
],
...
}
]
...
}
(Обратите внимание, что путь указан относительно src
папки)
Я лично использую его, и он отлично работает.
Начиная с бета-версии 24, я добавил функцию в Angular CLI, которая гарантирует, что все assets
файлы и папки обслуживаются с сервера разработки webpack, а ng test
не только при запуске ng serve
.
Он также поддерживает обслуживание файлов ресурсов на сервере разработки webpack, используемом для модульных тестов ( ng test
).
(в случае, если вам нужны файлы JSON для тестов, или вы просто ненавидите видеть 404 предупреждения в консоли).
Они уже обслуживаются из- ng e2e
за переполнения ng serve
.
И у него также есть более продвинутые функции, такие как фильтрация того, какие файлы вы хотите из папки, и отличное имя выходной папки от исходной папки:
{
...
"Программы" [
{
"корень": "SRC",
"активы": [
"активы",
"web.config":
{
// Копируем содержимое в эту папку
"вход": "../",
// Соответствует этому подстановочному знаку
"glob": "* .config",
// И помещаем их в эту папку в `dist` ('.' Означает помещать их напрямую в` dist`)
"вывод": "."
}
],
...
}
]
...
}
Вы также можете обратиться к официальной документации: Руководство по Angular - Конфигурация рабочей области
.
.
[ТОЛЬКО ДЛЯ АРХИВИРОВАНИЯ] Исходный ответ (6 октября 2016 г.):
К сожалению, в настоящее время это не поддерживается (начиная с бета-версии 16). Я высказал конкретную озабоченность команде (файлы web.config), но, похоже, это не произойдет в ближайшее время (если вы не разветвляете CLI и т. Д.).
Следите за этим вопросом, чтобы получить полное обсуждение и возможные будущие подробности.
PS
Для файла JSON вы можете вставить его ./src/assets/
. Эта папка копируется как есть ./dist/assets/
. Это текущее поведение.
Раньше, во времена systemJS, была другая ./public/
папка, в которую копировали ./dist/
напрямую, но ее нет в версиях Webpack, о которых говорится в упомянутой выше проблеме.