1、首先说明sass和scss的区别。css
一、异同:1)简言之能够理解scss是sass的一个升级版本,彻底兼容sass以前的功能,又有了些新增能力。语法形式上有些许不一样,最主要的就是sass是靠缩进表示嵌套关系,scss是花括号vue
2)文件扩展名不一样,Sass 是以“.sass”后缀为扩展名,而 SCSS 是以“.scss”后缀为扩展名node
3)语法书写方式不一样,Sass 是以严格的缩进式语法规则来书写,不带大括号({})和分号(;),而 SCSS 的语法书写和咱们的 CSS 语法书写方式很是相似。webpack
//sass .father width:100px; .son width:50px; //scss .father{ width:100px; .son{ width:50px; } }
二、 scss功能很强大的样子,能作运算、写函数啥的,可是我只是做为语法糖用而已,只看了些基础功能
我我的经常使用的功能有:git
三、一个关于@mixin、@extend、%placeholder的适用场景总结web
2、npm
一、开始在vue项目中使用sass,在命令行输入一下命令进行安装(使用git命令行要用shift+insert 进行粘贴不然粘贴不上)sass
cnpm install node-sass --save-dev //安装node-sass
cnpm install sass-loader --save-dev //安装sass-loader
cnpm install style-loader --save-dev //安装style-loader 有些人安装的是 vue-style-loader 实际上是同样的!
2. 这个时候你打开build文件夹下面的webpack.base.config.js
把里面的module改为这样的babel
module: {
rules: [
{
test: /\.vue$/,
loader: 'vue-loader',
options: vueLoaderConfig
},
{
test: /\.js$/,
loader: 'babel-loader',
include: [resolve('src'),
resolve('test')]
},
{
test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
loader: 'url-loader',
options: {
limit: 10000,
name: utils.assetsPath('img/[name].[hash:7].[ext]')
}
},
{
test: /\.(woff2?|eot|ttf|otf)(\?.*)?$/,
loader: 'url-loader',
options: {
limit: 10000,
name: utils.assetsPath('fonts/[name].[hash:7].[ext]')
}
},
{ //从这一段上面是默认的!不用改!下面是没有的须要你手动添加,至关因而编译识别sass!
test: /\.scss$/,
loaders: ["style", "css", "sass"]
}
]
}
3.在须要用到sass的地方添加lang=scsssvg
<style lang="scss" scoped="" type="text/css">
//你的sass语言 $primary-color: #333;
body {
color: $primary-color; //编译后就成了 color:#333;相似于js的变量!
}
</style>
sass的一些其它用法能够查看官网!