Angular中支持SCSS的方法


Posted in Javascript onNovember 18, 2017

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';

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

Javascript 相关文章推荐
改写一个简单的菜单 弹性大小
Dec 02 Javascript
jquery+json实现数据二级联动的方法
Nov 28 Javascript
详解Backbone.js框架中的模型Model与其集合collection
May 05 Javascript
基于jPlayer三分屏的制作方法
Dec 21 Javascript
vue-awesome-swiper滑块插件使用方法详解
Nov 27 Javascript
解决vue中无法动态修改jqgrid组件 url地址的问题
Mar 01 Javascript
Node.js爬取豆瓣数据实例分析
Mar 05 Javascript
Layer弹出层动态获取数据的方法
Aug 20 Javascript
Vant的安装和配合引入Vue.js项目里的方法步骤
Dec 05 Javascript
ES6中的class是如何实现的(附Babel编译的ES5代码详解)
May 17 Javascript
vue实现图片上传到后台
Jun 29 Javascript
浅谈es6中的元编程
Dec 01 Javascript
VUE element-ui 写个复用Table组件的示例代码
Nov 18 #Javascript
jQuery实现checkbox的简单操作
Nov 18 #jQuery
浅谈Emergence.js 检测元素可见性的 js 插件
Nov 18 #Javascript
基于jquery实现五星好评
Nov 18 #jQuery
基于JavaScript实现五子棋游戏
Aug 26 #Javascript
JavaScript canvas实现围绕旋转动画
Nov 18 #Javascript
Vue2.0设置全局样式(less/sass和css)
Nov 18 #Javascript
You might like
Mysql的Root密码忘记,查看或修改的解决方法(图文介绍)
2013/06/14 PHP
PHP获取一年有几周以及每周开始日期和结束日期
2015/08/06 PHP
php 遍历目录,生成目录下每个文件的md5值并写入到结果文件中
2016/12/12 PHP
Laravel中批量赋值Mass-Assignment的真正含义详解
2017/09/29 PHP
Yii框架视图、视图布局、视图数据块操作示例
2019/10/14 PHP
js字符编码函数区别分析
2008/06/05 Javascript
json 入门基础教程 推荐
2009/10/31 Javascript
safari,opera嵌入iframe页面cookie读取问题解决方法
2010/06/23 Javascript
jQuery1.6 使用方法一
2011/11/23 Javascript
NodeJS的模块写法入门(实例代码)
2012/03/07 NodeJs
jquery的选择器的使用技巧之如何选择input框
2013/09/22 Javascript
js验证上传图片的方法
2015/05/12 Javascript
深入浅析Nodejs的Http模块
2017/06/20 NodeJs
ReactNative之FlatList的具体使用方法
2017/11/29 Javascript
Vue.js做select下拉列表的实例(ul-li标签仿select标签)
2018/03/02 Javascript
Vue formData实现图片上传
2019/08/20 Javascript
vue基于v-charts封装双向条形图的实现代码
2019/12/09 Javascript
jQuery弹框插件使用方法详解
2020/05/26 jQuery
vue-列表下详情的展开与折叠案例
2020/07/28 Javascript
[27:08]完美世界DOTA2联赛PWL S2 SZ vs Rebirth 第二场 11.21
2020/11/23 DOTA
跟老齐学Python之Import 模块
2014/10/13 Python
python使用smtplib模块通过gmail实现邮件发送的方法
2015/05/08 Python
Python_LDA实现方法详解
2017/10/25 Python
对pandas通过索引提取dataframe的行方法详解
2019/02/01 Python
Django ModelForm组件使用方法详解
2019/07/23 Python
基于Keras 循环训练模型跑数据时内存泄漏的解决方式
2020/06/11 Python
详解pandas赋值失败问题解决
2020/11/29 Python
浅谈css3新单位vw、vh、vmin、vmax的使用详解
2017/12/01 HTML / CSS
JACK & JONES荷兰官网:男士服装和鞋子
2021/03/07 全球购物
求网格中的黑点分布
2013/11/06 面试题
维德科技C#面试题笔试题
2015/12/09 面试题
《三顾茅庐》教学反思
2014/04/10 职场文书
教师业务培训方案
2014/05/01 职场文书
酒店员工辞职信范文
2015/02/28 职场文书
房地产置业顾问岗位职责
2015/04/11 职场文书
紫日观后感
2015/06/05 职场文书