因为需要改的样式有点多,想说弄个公共scss引入,于是就在main.js import(@/asset/css/common.scss)
,结果报错:It’s no longer allowed to omit the ‘-loader’ suffix when using loaders…
版本:
- “vue”: “^2.5.2”,
- “webpack”: “^3.12.0”,
解决方法如下:
1.安装相关依赖(这里用的是cnpm):
cnpm install node-sass --save-dev
cnpm install sass-loader --save-dev
cnpm install style-loader --save-dev
cnpm install sass-resources-loader --save-dev
2.修改build/utils.js:
//scss: generateLoaders('sass'),//这是原来的代码,改为下面的
scss: generateLoaders('sass').concat(
{
loader: 'sass-resources-loader',
options: {
resources: path.resolve(__dirname, '../src/assets/css/common.scss')//引入的scss文件位置
}
}
),
这样的话,就不需要在main.js引入了,utils.js里已经写好了。因为我没有去掉main.js里的引入,又傻呵呵的盯着报错(大致就是在scss前加上-loader,在css前加-loader,但是webpack这个版本已经自动配置好了的。)so,又找了半小时原因….
3.最后,重启下环境,完成。