get/set устарели в пользу команды config
Используя angular-cli в командной строке, я выполнил:
ng set defaults.styleExt styl
установить стиль по умолчанию на Stylus, и я получил этот ответ:
get/set устарели в пользу команды config
Я хочу изменить расширение стиля в проекте EXISTING для использования SCSS. Как это сделать с помощью команды config? Где находится документация для ng config?
Я использую Angular CLI v6.0.0
ng help говорит:
config Получить/установить значения конфигурации
но не уточняет. Спасибо
Ответы
Ответ 1
Для Angular 6 вы хотите использовать следующую команду:
ng config [email protected]/angular:component.styleext styl
Это автоматически добавит halfer секции "schematics", упомянутый в файле angular.json.
Вот официальная документация: https://github.com/angular/angular-cli/wiki/stories-css-preprocessors
Ответ 2
ОК. Я сделал diff для проекта, сгенерированного с помощью:
ng new --style=styl PROJECT_NAME
и то же самое без флага --style и различия в файле конфигурации angular.json представлены в прилагаемых файлах.png.
Используя эти различия, я вручную внес изменения в angular.json следующим образом:
(1) Измените projects.PROJECT_NAME.schematics
следующим образом:
"schematics": {
"@schematics/angular:component": {
"styleext": "styl"
}
}
(2) Измените projects.PROJECT_NAME.architect.build.options.styles
следующим образом:
"styles": [
"src/styles.styl"
]
(3) Измените projects.PROJECT_NAME.architect.test.options.styles
следующим образом:
"styles": [
"styles.styl"
]
(4) Переименуйте src/styles.css в src/styles.styl
Ваши существующие компоненты с удовольствием будут продолжать использовать .css
но новые компоненты теперь будут сгенерированы с .styl
файлов .styl
.
Различия в формате PNG:
...
Ответ 3
ng config [email protected]/angular:component '{ styleext: "scss"}'
для конкретного проекта или для дефолта по всем проектам
ng config [email protected]/angular:component '{ styleext: "scss"}'