vue-cli + sass 的正确打开方式图文详解


Posted in Javascript onOctober 27, 2017

关于在vue-cli搭建的项目中怎么配置sass,网上搜到的基本是这种答案:

vue-cli + sass 的正确打开方式图文详解

但是我认为,直接将样式写在每个单文件的<style>里,是十分不明智的做法。且不说node-sass安装过程的各种坑,内嵌的<style>也让组件显得十分混乱。想象一下你在修改某个methods时必须拖动滚轮穿越几十上百行的css代码,又或者为了修改一组样式,却找不到对应的css文件,因为它们散布在vue文件里。。。

在我看来,正确的做法应该是单独管理sass文件,然后在main.js中直接引入编译好的css文件。像iView, ElementUI 都是采用这种做法。

如果你认同并且打算采用这种方式,看下面这个具体的例子:

vue-cli + sass 的正确打开方式图文详解

项目结构如上图,style文件夹下是分门别类的scss文件,方便管理和后期维护。然后在main.scss引入所有的scss样式片段,使用 sass --watch main.scss:main.css 命令监听并将scss文件编译为css文件。最后在main.js中引入main.css文件。这样你就可以直接在元素上添加class,然后在scss中畅快写样式了。

vue-cli + sass 的正确打开方式图文详解

当然我们不希望每次手动输入这些命令,初步想法是通过修改dev命令,:

vue-cli + sass 的正确打开方式图文详解

但是这样并不能达到效果,因为每次只会启动前一个命令。于是考虑到使用批处理来实现:

vue-cli + sass 的正确打开方式图文详解
vue-cli + sass 的正确打开方式图文详解

将这两个.bat放在根目录下,然后配置package.json:

vue-cli + sass 的正确打开方式图文详解

这样就可以使用 npm run dev 一键启动 hot reload 和 sass watch了。

总结

以上所述是小编给大家介绍的vue-cli + sass 的正确打开方式图文详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
javascript基础的动画教程,直观易懂
Jan 10 Javascript
jQuery + Flex 通过拖拽方式动态改变图片的代码
Aug 03 Javascript
一个CSS+jQuery实现的放大缩小动画效果
Feb 19 Javascript
js正则表达式验证邮件地址
Nov 12 Javascript
JavaScript+CSS无限极分类效果完整实现方法
Dec 22 Javascript
Javascript之Number对象介绍
Jun 07 Javascript
JS SetInterval 代码实现页面轮询
Aug 11 Javascript
node前端开发模板引擎Jade的入门
May 11 Javascript
jQuery弹框插件使用方法详解
May 26 jQuery
weui上传多图片,压缩,base64编码的示例代码
Jun 22 Javascript
在vue中使用Echarts利用watch做动态数据渲染操作
Jul 20 Javascript
antd Select下拉菜单动态添加option里的内容操作
Nov 02 Javascript
本地搭建微信小程序服务器的实现方法
Oct 27 #Javascript
Vue2.0 axios前后端登陆拦截器(实例讲解)
Oct 27 #Javascript
浅析Javascript中双等号(==)隐性转换机制
Oct 27 #Javascript
微信小程序promsie.all和promise顺序执行
Oct 27 #Javascript
JS+CSS实现网页加载中的动画效果
Oct 27 #Javascript
vue-resource拦截器设置头信息的实例
Oct 27 #Javascript
Vue-resource拦截器判断token失效跳转的实例
Oct 27 #Javascript
You might like
IIS环境下快速安装、配置和调试PHP5.2.0
2006/12/17 PHP
需要注意的几个PHP漏洞小结
2012/02/05 PHP
PHP二维数组矩形转置实例
2016/07/20 PHP
Yii框架表单提交验证功能分析
2017/01/07 PHP
用JS写的一个TableView控件代码
2010/01/23 Javascript
JS小功能(列表页面隔行变色)简单实现
2013/11/28 Javascript
将json对象转换为字符串的方法
2014/02/20 Javascript
javascript event在FF和IE的兼容传参心得(绝对好用)
2014/07/10 Javascript
AngularJS学习笔记之ng-options指令
2015/06/16 Javascript
thinkphp实现无限分类(使用递归)
2015/12/19 Javascript
JS简单获取及显示当前时间的方法
2016/08/03 Javascript
EditPlus中的正则表达式 实战(2)
2016/12/15 Javascript
关于JS Lodop打印插件打印Bootstrap样式错乱问题的解决方案
2016/12/23 Javascript
深入研究React中setState源码
2017/11/17 Javascript
jQuery Dom元素操作技巧
2018/02/04 jQuery
vue中如何使用ztree
2018/02/06 Javascript
Vue 源码分析之 Observer实现过程
2018/03/29 Javascript
微信小程序websocket实现聊天功能
2020/03/30 Javascript
vue中使用axios post上传头像/图片并实时显示到页面的方法
2018/09/27 Javascript
JavaScript函数重载操作实例浅析
2020/05/02 Javascript
小程序Scroll-view上拉滚动刷新数据
2020/06/21 Javascript
解决vue侦听器watch,调用this时出现undefined的问题
2020/10/30 Javascript
python 多进程通信模块的简单实现
2014/02/20 Python
Python利用pandas计算多个CSV文件数据值的实例
2018/04/19 Python
Flask框架Flask-Login用法分析
2018/07/23 Python
python中while和for的区别总结
2019/06/28 Python
使用python对多个txt文件中的数据进行筛选的方法
2019/07/10 Python
GOOD AMERICAN官网:为曲线性感而设计
2017/12/28 全球购物
2014各大专业毕业生自我评价
2014/09/17 职场文书
房屋出售授权委托书
2014/10/12 职场文书
商家认证委托书格式
2014/10/16 职场文书
校园会短篇的广播稿
2014/10/21 职场文书
2014年环保局工作总结
2014/12/11 职场文书
留学推荐信(中英文版)
2015/03/26 职场文书
Python绘制分类图的方法
2021/04/20 Python
python神经网络Xception模型
2022/05/06 Python