我是Angular的新手,来自Ember社区。尝试使用新的基于Ember-CLI的Angular-CLI。
我需要知道在一个新的Angular项目中处理SASS的最佳方法。我尝试使用Ember-CLI -sass回购,看看它是否能正常运行,因为Angular-CLI的许多核心组件都是在Ember-CLI模块上运行的。
它没有工作,但比再次不确定,如果我只是配置错误的东西。
另外,在新的Angular项目中组织样式的最佳方法是什么?如果能将sass文件与组件放在同一个文件夹中就太好了。
我是Angular的新手,来自Ember社区。尝试使用新的基于Ember-CLI的Angular-CLI。
我需要知道在一个新的Angular项目中处理SASS的最佳方法。我尝试使用Ember-CLI -sass回购,看看它是否能正常运行,因为Angular-CLI的许多核心组件都是在Ember-CLI模块上运行的。
它没有工作,但比再次不确定,如果我只是配置错误的东西。
另外,在新的Angular项目中组织样式的最佳方法是什么?如果能将sass文件与组件放在同一个文件夹中就太好了。
当前回答
引用自官方github回购这里-
以安装为例 NPM安装node-sass 将项目中的.css文件重命名为.scss或.sass。它们将被自动编译。 Angular2App的options参数有sassCompiler、lessCompiler、stylusCompiler和compassCompiler选项,它们直接传递给各自的CSS预处理器。
在这里看到的
https://github.com/angular/angular-cli/wiki/stories-css-preprocessors
其他回答
引用自官方github回购这里-
以安装为例 NPM安装node-sass 将项目中的.css文件重命名为.scss或.sass。它们将被自动编译。 Angular2App的options参数有sassCompiler、lessCompiler、stylusCompiler和compassCompiler选项,它们直接传递给各自的CSS预处理器。
在这里看到的
https://github.com/angular/angular-cli/wiki/stories-css-preprocessors
Angular CLI版本9(用于创建Angular 9项目)现在从schematics中获取style,而不是styleext。使用如下命令: Ng config schematics.@schematics/angular:组件。样式scsand和生成的角。Json应该是这样的 “图表”:{ “@schematics /角:组件":{ “风格”:“scss” } }
其他可能的解决方案和解释: 用angular CLI创建一个支持sass的新项目,试试这个:
ng new My_New_Project --style=scss
你也可以使用——style=sass &如果你不知道区别,阅读这篇简短的文章,如果你仍然不知道,就使用scss并继续学习。
如果你有一个angular 5的项目,使用这个命令来更新项目的配置。
ng set defaults.styleExt scss
最新版本
Angular 6使用CLI为现有项目设置新样式:
ng config schematics.@schematics/angular:component.styleext scss
或者直接导入angular.json:
"schematics": {
"@schematics/angular:component": {
"styleext": "scss"
}
}
Ng set——全局默认值。styleExt=scss自ng6起已弃用。你会收到这样的信息:
Get /set已弃用,改用config命令
你应该使用:
ng config schematics.@schematics/angular:component '{ styleext: "scss"}'
如果你想要针对一个特定的项目(用你的项目名替换{project}):
ng config projects.{project}.schematics.@schematics/angular:component '{ styleext: "scss"}'
就像Mertcan说的,使用scss的最好方法是创建带有该选项的项目:
ng new My_New_Project --style=scss
Angular-cli还添加了一个选项,可以在项目创建后使用以下命令更改默认的css预处理器:
ng set defaults.styleExt scss
要了解更多信息,你可以在这里查看他们的文档:
https://github.com/angular/angular-cli
我注意到在移动到scss文件时一个非常烦人的陷阱!!在app.component.ts中,必须从简单的:styleUrls: [' app.ponent .scss']转移到styleUrls: ['./ app.ponent .scss'] (add ./)
ng在生成新项目时这样做,但在创建默认项目时似乎不这样做。如果在ng构建过程中看到resolve错误,请检查此问题。我只花了1个小时。