Angular CLI 生成项目时css less scss样式使用说明

通过Angular-CLI命令行工具创建可指定样式的项目
step1.创建采用css的angular项目

ng new test1

默认会生成一个新的angular项目,检查angular-cli.json配置文件会发现:

"defaults": {
    "styleExt": "css",
    "component": {}
  }

step2.利用CLI命令行创建采用scss的angular项目

ng new test2 --style=scss

检查angular-cli.json的配置

"defaults": {
    "styleExt": "scss",
    "component": {}
  }

step3.利用CLI命令航创建采用less的angular项目

ng new test --style=less

1)检查angular-cli.json的配置

"defaults": {
    "styleExt": "less",
    "component": {}
  }

2)截图可以看到生成了一个style.less文件
图片描述

3)检查angular-cli.json看配置发现引用的样式是styles.less
图片描述

思考:
1.如果创建项目时指定了采用css,less或者scss,那么使用过程中可以在组件的styleUrl中配置任意的样式吗?
实际项目过程中验证:
如果默认采用less进行指定styles的话,在通过angular-cli命令创建组件
$ ng g c cmp1
create src/app/cmp1/cmp1.component.less (0 bytes)
create src/app/cmp1/cmp1.component.html (23 bytes)
create src/app/cmp1/cmp1.component.spec.ts (614 bytes)
create src/app/cmp1/cmp1.component.ts (262 bytes)
update src/app/app.module.ts (388 bytes)
创建的组件默认会创建一个less文件而不是.css文件,保持了angular-cli命令行的一致性。同理css和scss也是一样的表现。
2.默认采用css如果手工不通过angular-cli命令进行组件创建,指定less或者scss,angular会识别吗?
经过实际项目验证,默认为css,创建组件指定为scss或者less,ng build打包也是可以识别的可见angular的编译还是很聪明的,考虑了混合的场景。

如果需要修改全局angular配置,也就是不输入--style 就能创建出 scss或者less,则通过如下修改方式进行:

ng set --global defaults.styleExt scss

不过,个人不太推荐随意修改全局配置,个性话配置还是在项目中处理比较好。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值