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的一些其它用法能夠查看官網!