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 相关文章推荐
jQuery formValidator表单验证插件开源了 含API帮助、源码、示例
Aug 14 Javascript
jQuery 使用手册(五)
Sep 23 Javascript
jQuery 选择器理解
Mar 16 Javascript
JS刷新当前页面的几种方法总结
Dec 24 Javascript
Javascript中arguments对象详解
Oct 22 Javascript
理解Angular数据双向绑定
Jan 10 Javascript
jQuery实现下拉加载功能实例代码
Apr 01 Javascript
对jquery的ajax进行二次封装以及ajax缓存代理组件:AjaxCache详解
Apr 11 Javascript
jquery精度计算代码 jquery指定精确小数位
Feb 06 Javascript
Node.js读取文件内容示例
Mar 07 Javascript
vue.js分页中单击页码更换页面内容的方法(配合spring springmvc)
Feb 10 Javascript
Vue中插入HTML代码的方法
Sep 21 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
怎样在UNIX系统下安装MySQL
2006/10/09 PHP
php截取utf-8中文字符串乱码的解决方法
2010/03/29 PHP
php各种编码集详解和以及在什么情况下进行使用
2011/09/11 PHP
浅析php插件 Simple HTML DOM 用DOM方式处理HTML
2013/07/01 PHP
PHP调用接口API封装的例子
2019/10/11 PHP
一个可以显示阴历的JS代码
2007/03/05 Javascript
给Javascript数组插入一条记录的代码
2007/08/30 Javascript
Javascript与flash交互通信基础教程
2008/08/07 Javascript
使用Javascript接收get传递的值的代码
2011/11/30 Javascript
Javascript合并表格中具有相同内容单元格示例
2013/08/11 Javascript
js实现无需数据库的县级以上联动行政区域下拉控件
2013/08/14 Javascript
如何判断鼠标是否在DIV的区域内
2013/11/13 Javascript
深入理解JS中的变量及作用域、undefined与null
2014/03/04 Javascript
node.js+express制作网页计算器
2016/01/17 Javascript
Javascript的比较汇总
2016/07/25 Javascript
AngularJS入门教程之MVC架构实例分析
2016/11/01 Javascript
详解webpack解惑:require的五种用法
2017/06/09 Javascript
vue2.0 axios跨域并渲染的问题解决方法
2018/03/08 Javascript
ES6使用export和import实现模块化的方法
2018/09/10 Javascript
JointJS JavaScript流程图绘制框架解析
2019/08/15 Javascript
python对字典进行排序实例
2014/09/25 Python
python numpy 显示图像阵列的实例
2018/07/02 Python
使用Rasterio读取栅格数据的实例讲解
2019/11/26 Python
AmazeUI 等分网格的实现示例
2020/08/25 HTML / CSS
马来西亚和新加坡巴士票在线预订:CatchThatBus
2018/11/17 全球购物
Tod’s英国官方网站:意大利奢华手工制作手袋和鞋履
2019/03/15 全球购物
医院竞聘演讲稿
2014/05/16 职场文书
2014年教师节红领巾广播稿
2014/09/10 职场文书
学校总务处领导班子民主生活会对照检查材料思想汇报
2014/09/27 职场文书
社保代办委托书怎么写
2014/10/06 职场文书
医生见习报告范文
2014/11/03 职场文书
优秀教师个人材料
2014/12/15 职场文书
工作检讨书范文
2015/01/23 职场文书
2016年国陪研修感言
2015/11/18 职场文书
MongoDB日志切割的三种方式总结
2021/09/15 MongoDB
MySQL基础快速入门知识总结(附思维导图)
2021/09/25 MySQL