在create-react-app中使用sass的方法示例


Posted in Javascript onOctober 01, 2018

Sass(英文全称:Syntactically Awesome Stylesheets)是一个最初由Hampton Catlin设计并由Natalie Weizenbaum开发的层叠样式表语言。Sass是一个将脚本解析成CSS的脚本语言,即SassScript。Sass包括两套语法。最开始的语法叫做“缩进语法”,与Haml类似,使用缩进来区分代码块,并且用回车将不同规则分隔开。而较新的语法叫做“SCSS”,使用和CSS一样的块语法,即使用大括号将不同的规则分开,使用分号将具体的样式分开。通常情况下,这两套语法通过.sass和.scss两个文件扩展名区分开。相信每个前端开发者都对这种css预处理器有所耳闻。

不管你是刚使用Reactjs或者是Reactjs的老司机,你们一定都听说过create-react-app这个脚手架,而从create-react-app的官方文档中,我们可以看到他们暂时还不支持直接导入LESS或者Sass。但是通过一些配置,我们还是可以从官方脚手架中使用sass/scss/less的。

1、安装node-sass-chokidar到依赖

npm install --save node-sass-chokidar

2、安装node-sass

npm install node-sass

3、在项目的package.json中,将以下行添加到scripts中:

"build-css": "node-sass-chokidar src/ -o src/",
 "watch-css": "npm run build-css && node-sass-chokidar src/ -o src/ --watch --recursive",

4、使用

创建xx.scss文件,或者将初始化项目中的src/App.css重命名为src/App.scss,在终端运行

npm run watch-css

watch-css将在src子目录中找到每个Sass文件,并在其旁边创建一个相应的CSS文件

5、同时编译sass和运行项目

(1)可以打开两个终端,一个终端执行npm start运行项目,另一个终端执行npm run watch-css进行同步编译

(2)使用npm-run-all工具,执行npm install npm-run-all --save-dev安装,在在项目的package.json中,将以下行添加到scripts中:

"run-double": "npm-run-all -p watch-css start"

在终端执行npm run run-double,可同时运行项目和编译sass

*注:"run-double"这个名称可改为自己喜欢的名称

6、推荐

更改create-react-app的webpack配置,一般使用react-app-rewired来处理

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

Javascript 相关文章推荐
用js实现多域名不同文件的调用方法
Jan 12 Javascript
原生js实现查找/添加/删除/指定元素的class
Apr 12 Javascript
JQuery为textarea添加maxlength属性并且兼容IE
Apr 25 Javascript
如何使用JS获取IE上传文件路径(IE7,8)
Jul 08 Javascript
JavaScript中发布/订阅模式的简单实例
Nov 05 Javascript
js实现开启密码大写提示
Dec 21 Javascript
js 颜色选择插件
Jan 23 Javascript
js实现3d悬浮效果
Feb 16 Javascript
jQuery实现点击下拉框中的值累加到文本框中的方法示例
Oct 28 jQuery
微信小程序云开发如何使用云函数生成二维码
May 18 Javascript
javascript头像上传代码实例
Sep 28 Javascript
Node Mongoose用法详解【Mongoose使用、Schema、对象、model文档等】
May 13 Javascript
详解mpvue小程序中怎么引入iconfont字体图标
Oct 01 #Javascript
Vue 组件封装 并使用 NPM 发布的教程
Sep 30 #Javascript
浅谈angular表单提交中ng-submit的默认使用方法
Sep 30 #Javascript
angularJs中$scope数据序列化的实例
Sep 30 #Javascript
mpvue+vuex搭建小程序详细教程(完整步骤)
Sep 30 #Javascript
mpvue项目中使用第三方UI组件库的方法
Sep 30 #Javascript
mpvue将vue项目转换为小程序
Sep 30 #Javascript
You might like
我的论坛源代码(五)
2006/10/09 PHP
php基础知识:类与对象(1)
2006/12/13 PHP
PHP 各种排序算法实现代码
2009/08/20 PHP
js用图作提交按钮或超连接
2008/03/26 Javascript
jquery构造器的实现代码小结
2011/05/16 Javascript
关于图片按比例自适应缩放的js代码
2011/10/30 Javascript
javascript是怎么继承的介绍
2012/01/05 Javascript
javascript读写XML实现广告轮换(兼容IE、FF)
2013/08/09 Javascript
javascript 获取网页标题代码实例
2014/01/22 Javascript
JavaScript模块随意拖动示例代码
2014/05/27 Javascript
使用HTML+CSS+JS制作简单的网页菜单界面
2015/07/27 Javascript
jQuery实现表格与ckeckbox的全选与单选功能
2016/11/24 Javascript
理解javascript async的用法
2017/08/22 Javascript
使用vue2实现购物车和地址选配功能
2018/03/29 Javascript
使用typescript开发angular模块并发布npm包
2018/04/19 Javascript
angularjs http与后台交互的实现示例
2018/12/21 Javascript
Vue组件教程之Toast(Vue.extend 方式)详解
2019/01/27 Javascript
使用vue-cli3 创建vue项目并配置VS Code 自动代码格式化 vue语法高亮问题
2019/05/14 Javascript
JavaScript实现多层颜色选项卡嵌套
2020/09/21 Javascript
vue 通过base64实现图片下载功能
2020/12/19 Vue.js
pycharm 使用心得(一)安装和首次使用
2014/06/05 Python
Python学习小技巧之列表项的推导式与过滤操作
2017/05/20 Python
Python iter()函数用法实例分析
2018/03/17 Python
WIn10+Anaconda环境下安装PyTorch(避坑指南)
2019/01/30 Python
python3.4+pycharm 环境安装及使用方法
2019/06/13 Python
pyqt5 comboBox获得下标、文本和事件选中函数的方法
2019/06/14 Python
Python MOCK SERVER moco模拟接口测试过程解析
2020/04/13 Python
New Balance俄罗斯官方网上商店:购买运动鞋
2020/03/02 全球购物
俄罗斯连接商品和买家的在线平台:goods.ru
2020/11/30 全球购物
工商管理专业毕业生求职信
2014/05/26 职场文书
卫生院艾滋病宣传活动小结
2014/07/09 职场文书
临床医学生职业规划书范文
2014/10/25 职场文书
2015年英语教研组工作总结
2015/05/23 职场文书
演讲稿:​快乐,从不抱怨开始!
2019/04/02 职场文书
Springboot如何使用logback实现多环境配置?
2021/06/16 Java/Android
对讲机的最大通讯距离是多少
2022/02/18 无线电