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 相关文章推荐
根据判断浏览器类型屏幕分辨率自动调用不同CSS的代码
Feb 22 Javascript
JQuery实现倒计时按钮的实现代码
Mar 23 Javascript
JS读取XML文件示例代码
Nov 15 Javascript
JS获取随机数函数可自定义最小值最大值
May 08 Javascript
jQuery实现径向动画菜单效果
Jul 17 Javascript
js事件驱动机制 浏览器兼容处理方法
Jul 23 Javascript
JavaScript实现的仿新浪微博原生态输入字数即时检查功能【兼容IE6】
Sep 26 Javascript
jQuery 实现倒计时天,时,分,秒功能
Jul 31 jQuery
微信小程序实现商品属性联动选择
Feb 15 Javascript
vue实现的请求服务器端API接口示例
May 25 Javascript
JS数组方法reverse()用法实例分析
Jan 18 Javascript
Vue使用Proxy代理后仍无法生效的解决
Nov 13 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
CURL状态码列表(详细)
2013/06/27 PHP
php使用curl模拟登录后采集页面的例子
2013/11/04 PHP
php中获取主机名、协议及IP地址的方法
2014/11/18 PHP
PHP+MySQL删除操作实例
2015/01/21 PHP
php安装swoole扩展的方法
2015/03/19 PHP
js里的prototype使用示例
2010/11/19 Javascript
JavaScript OOP面向对象介绍
2010/12/02 Javascript
js获取 type=radio 值的方法
2014/05/09 Javascript
JS使用正则截取两个字符串之间的字符串实现方法详解
2017/01/06 Javascript
jQuery 插件实现随机自由弹跳气泡样式
2017/01/12 Javascript
jQuery点击导航栏选中更换样式的实现代码
2017/01/23 Javascript
js实现类bootstrap模态框动画
2017/02/07 Javascript
通过示例彻底搞懂js闭包
2017/08/10 Javascript
JavaScript实现京东购物放大镜和选项卡效果的方法分析
2018/07/05 Javascript
详解微信小程序实现仿微信聊天界面(各种细节处理)
2019/02/17 Javascript
详解React服务端渲染从入门到精通
2019/03/28 Javascript
D3.js的基础部分之数组的处理数组的排序和求值(v3版本)
2019/05/09 Javascript
jquery3和layui冲突导致使用layui.layer.full弹出全屏iframe窗口时高度152px问题
2019/05/12 jQuery
使用pip发布Python程序的方法步骤
2018/10/11 Python
pytorch打印网络结构的实例
2019/08/19 Python
python 线性回归分析模型检验标准--拟合优度详解
2020/02/24 Python
关于python 跨域处理方式详解
2020/03/28 Python
快速解决Django关闭Debug模式无法加载media图片与static静态文件
2020/04/07 Python
使用Python3 poplib模块删除服务器多天前的邮件实现代码
2020/04/24 Python
python时间序列数据转为timestamp格式的方法
2020/08/03 Python
使用CSS3制作响应式导航菜单的方法
2015/07/12 HTML / CSS
施华洛世奇澳大利亚官网:SWAROVSKI澳大利亚
2017/01/06 全球购物
您的时尚,您的生活方式:DTLR Villa
2019/12/25 全球购物
Hashtable 添加内容的方式有哪几种,有什么区别?
2012/04/08 面试题
亲属关系公证书
2014/04/08 职场文书
小学清明节活动总结
2014/07/04 职场文书
毕业生自荐求职信书写的技巧
2019/08/26 职场文书
导游词之秦始皇兵马俑博物馆
2019/09/29 职场文书
my.ini优化mysql数据库性能的十个参数(推荐)
2021/05/26 MySQL
Python如何使用循环结构和分支结构
2022/04/13 Python
Golang获取List列表元素的四种方式
2022/04/20 Golang