作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我想在使用 Angular CLI 创建的 Angular(4+) 项目中使用 Bootstrap 4 和 SASS。
我特别需要:
ng serve
时,添加监视和自动重新编译脚本最佳答案
为了使用 SASS 设置 Angular + Bootstrap 4,我们只需要配置 Angular CLI 并安装 Bootstrap 4 npm 包。无需安装任何 SASS 编译器,因为它已经包含在内。
编辑 :此答案已更新以适用于较新版本的 Angular CLI(使用 6.1.3 版测试)。我在这个答案的底部留下了旧 Angular CLI 的说明,但是我强烈推荐你到 update your Angular CLI version .
使用新 Angular CLI 的说明(版本 6 或更高版本)
1) 配置 Angular CLI 使用 SASS 而不是 CSS
- 在现有项目上:
编辑您的 angular.json
文件并添加 "styleext": "scss"
projects.PROJECT_NAME.schematics.@schematics/angular:component
的键值目的。
它应该是这样的:
{
// ...
"projects": {
"PROJECT_NAME": {
// ....
"schematics": {
"@schematics/angular:component": {
"styleext": "scss"
}
},
// ...
}
ng new my-project --style=scss
.css
重命名即可。至
.scss
并更改
@Component({ ... })
相应的配置:
styleUrls: ['./my-component.scss']
ng serve
之类的命令时,在这些文件发生更改时自动监视并重新编译这些文件。 .
npm install bootstrap --save
angular-cli.json
styles
中的配置数组(在任何其他自定义 css/scss 文件之前,以便让它们覆盖 bootstrap 规则:
"styles": [
"node_modules/bootstrap/scss/bootstrap.scss",
/* ... */
],
app/assets/scss
下添加任何应该全局影响项目的附加 SASS 样式(与单个组件样式不同)。然后在
styles
中引用
angular-cli.json
的数组.
main.scss
包含所有自定义 SASS 样式的文件:例如
_variables.scss
对于您的自定义变量,
_global.scss
为您的全局规则等设置文件。
angular-cli.json
您将仅引用一个自定义
main.scss
文件:
"styles": [
"node_modules/bootstrap/scss/bootstrap.scss",
"src/assets/scss/main.scss"
],
// main.scss
@import "variables";
@import "global";
// import more custom files...
*.scss
单个组件的样式文件。
ng set defaults.styleExt scss
.angular-cli.json
配置文件 (
example )。
ng new my-project --style=scss
这相当于正常创建一个新项目,然后运行上面提到的命令。
.css
重命名即可。至
.scss
并更改
@Component({ ... })
相应的配置:
styleUrls: ['./my-component.scss']
ng serve
之类的命令时,在这些文件发生更改时自动监视并重新编译这些文件。 .
npm install bootstrap --save
.angular-cli.json
styles
中的配置数组(在任何其他自定义 css/scss 文件之前,以便让它们覆盖 bootstrap 规则:
"styles": [
"../node_modules/bootstrap/scss/bootstrap.scss",
/* ... */
],
app/assets/scss
下添加任何应该全局影响项目的附加 SASS 样式(与单个组件样式不同)。然后在
styles
中引用
.angular-cli.json
的数组.
main.scss
包含所有自定义 SASS 样式的文件:例如
_variables.scss
对于您的自定义变量,
_global.scss
用于全局规则等的文件。(
example )。
.angular-cli.json
您将仅引用一个自定义
main.scss
文件:
"styles": [
"../node_modules/bootstrap/scss/bootstrap.scss",
"assets/scss/main.scss"
],
// main.scss
@import "variables";
@import "global";
// import more custom files...
*.scss
单个组件的样式文件。
关于angular - 如何在 Angular 中将 Bootstrap 4 与 SASS 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45660802/
我是一名优秀的程序员,十分优秀!