今天自己搭建vue-cli框架卡辰,安裝了element-ui,運(yùn)行沒有任何問題邪意,修改了下樣式九妈,為了避免修改ele里面組件的樣式出現(xiàn)樣式污染,想著裝個(gè)sass寫嵌套的雾鬼,這樣既方便又能很好的解決問題萌朱,那么動(dòng)起來:
1.安裝需要的依賴:
npm install node-sass --save-dev //安裝node-sass
npm install sass-loader --save-dev //安裝依賴包sass-loader
npm install style-loader --save-dev //安裝style-loader
2.在build文件夾下的webpack.base.conf.js的module下 rules里面添加配置
{
test: /\.sass$/,
loaders: ['style', 'css', 'sass']
},
3.然后在用到的頁面內(nèi)添加:
<style scoped lang="scss">
</style>
三個(gè)操作執(zhí)行完畢,npm run dev 跑起來策菜,無情報(bào)錯(cuò) loaderContext.getResolve is not a function晶疼。
百度后發(fā)現(xiàn),是因?yàn)榘惭b的sass loader版本太高又憨,降低版本即可冒晰,解決方案有兩個(gè):
1.找到項(xiàng)目的package.json文件,將里面的 "sass-loader"的版本更換掉 竟块。
"sass-loader": "^8.0.0"壶运,更換成了 "sass-loader": "^7.3.1",
注意這里需要將loader版本降低到8.0一下即可
PS:
新手特別需要注意,這里更換版本后浪秘,node_modules文件夾內(nèi)loader版本并沒有更改蒋情,需要?jiǎng)h除掉node_modules埠况,重新進(jìn)行npm install下載依賴,才算是解決問題了棵癣。
2.命令行解決:
npm uninstall sass-loader //卸載當(dāng)前版本
npm install sass-loader@7.3.1 --save-dev //安裝低版本
歐啦