Angular中支持SCSS的方法
scss介绍
SCSS是Sass3引入新的语法,其语法完全兼容CSS3,并且继承了Sass的强大功能。也就是说,任何标准的CSS3样式表都是具有相同语义的有效的SCSS文件。另外,SCSS还能识别大部分CSShacks(一些CSS小技巧)和特定于浏览器的语法,例如:古老的IEfilter语法。
由于SCSS是CSS的扩展,因此,所有在CSS中正常工作的代码也能在SCSS中正常工作。也就是说,对于一个Sass用户,只需要理解Sass扩展部分如何工作的,就能完全理解SCSS。大部分扩展,例如变量、parentreferences和指令都是一致的;唯一不同的是,SCSS需要使用分号和花括号而不是换行和缩进
在为组件添加样式时,为了样式的模块化,通常我们会使用SCSS、SASS。那么如何让我们的Angular工程支持SCSS或者SASS呢?下面将从以下两中方式来介绍:
- 创建工程时来指定
- 修改当前的工程
1、创建工程时来指定
在指定目录下运行:ngnewmyProject–style=scss
注:这里使用的Angular的CLI来创建工程的。
如果要指定SASS,则将scss换为sass即可。
2、修改当前工程
修改angular-cli.json文件,主要有两个地方需要修改:
将defaults中styleExt值设置为scss
"defaults":{ "styleExt":"scss", "component":{} }
这样我们在运行nggcomponentmyComponent等命令生成文件时,默认后缀就是scss
在apps下的styles中将styles.css修改为styles.scss
"apps":[ { "root":"src", "outDir":"dist", "assets":[ "assets", "favicon.ico" ], "index":"index.html", "main":"main.ts", "polyfills":"polyfills.ts", "test":"test.ts", "tsconfig":"tsconfig.app.json", "testTsconfig":"tsconfig.spec.json", "prefix":"app", "styles":[ "styles.scss" ], "scripts":[], "environmentSource":"environments/environment.ts", "environments":{ "dev":"environments/environment.ts", "prod":"environments/environment.prod.ts" } } ],
注:不要忘记修改style.css文件的后缀。
angularcli转变css工程为scss工程
方法一:
新增的时候就默认为scss
ngnewMy_New_Project--style=scss
方法二:
1、修改.angular-cli.json配置文件:
"defaults":{ "styleExt":"scss", } "styles":[ "styles.scss" ],
2、在src目录下新增文件_variables.scss
3、style.scss文件里配置如下:
@import'variables'; @import'../node_modules/bootstrap/scss/bootstrap';
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。