欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Angular中支持SCSS的方法

程序员文章站 2022-06-25 13:42:09
scss介绍 scss 是 sass 3 引入新的语法,其语法完全兼容 css3,并且继承了 sass 的强大功能。也就是说,任何标准的 css3 样式表都是具有相同...

scss介绍

scss 是 sass 3 引入新的语法,其语法完全兼容 css3,并且继承了 sass 的强大功能。也就是说,任何标准的 css3 样式表都是具有相同语义的有效的 scss 文件。另外,scss 还能识别大部分 css hacks(一些 css 小技巧)和特定于浏览器的语法,例如:古老的 ie filter 语法。

由于 scss 是 css 的扩展,因此,所有在 css 中正常工作的代码也能在 scss 中正常工作。也就是说,对于一个 sass 用户,只需要理解 sass 扩展部分如何工作的,就能完全理解 scss。大部分扩展,例如变量、parent references 和 指令都是一致的;唯一不同的是,scss 需要使用分号和花括号而不是换行和缩进

在为组件添加样式时,为了样式的模块化,通常我们会使用scss、sass。那么如何让我们的angular工程支持scss或者sass呢?下面将从以下两中方式来介绍:

  1. 创建工程时来指定
  2. 修改当前的工程

1、创建工程时来指定

在指定目录下运行:ng new myproject –style=scss

注:这里使用的angular的cli来创建工程的。

如果要指定sass,则将scss换为sass即可。

2、修改当前工程

修改angular-cli.json文件,主要有两个地方需要修改:

将defaults中styleext值设置为scss

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

这样我们在运行ng g component mycomponent 等命令生成文件时,默认后缀就是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

ng new my_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';

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。