Angular CLI не копирует папку активов в дистрибутив
У меня есть приложение, которое было в Angular 4 с пользовательской системой сборки. Я пытаюсь преобразовать его в Angular 6, используя ng-cli
, Однако у меня возникли проблемы с получением ng build
Команда скопировать src/assets
папка для dist
,
Это соответствующая часть моего файла angular.json:
"projects": {
"client": {
"root": "",
"sourceRoot": "src",
"projectType": "application",
"prefix": "app",
"schematics": {},
"architect": {
"build": {
"builder": "@angular-devkit/build-angular:browser",
"options": {
"outputPath": "dist/client",
"index": "src/index.html",
"main": "src/main.ts",
"polyfills": "src/polyfills.ts",
"tsConfig": "src/tsconfig.app.json",
"assets": [
"src/assets"
],
"styles": [
"./node_modules/bootstrap/dist/css/bootstrap.min.css",
"src/styles/styles.css"
],
"scripts": [
"./node_modules/jquery/dist/jquery.min.js",
"./node_modules/bootstrap/dist/js/bootstrap.js"
]
}
.
.
.
... rest of angular.json
и папка моих активов тоже не пустая:
У меня есть файл CSS, который ссылается на некоторые файлы в assets/fonts/
поэтому CLI просто помещает эти файлы в корень dist
папка, а не dist/assets
и не копирует другие файлы.
Отвечая на ответы здесь также:
это было "src/assets"
первоначально. Это не сработало. Итак, я попробовал с "./src/assets"
но это тоже не сработало.
1 ответ
У меня была аналогичная проблема с ядром asp.net и проектом angular, и работала приведенная ниже настройка в angular.json:
"assets": [
{
"glob":"**/*",
"input":"src/assets/",
"output":"assets/"
}
],
Удалите "." на вашем пути, это может решить вашу проблему. также убедитесь, что ваш sourceroot
установлен в src
, как это "sourceRoot": "src"
"assets": [
"src/assets"
],