几周前,我使用3.0版本的CLI成功地将一个新的Vue项目配置为使用sass-resource-loader
,使用的信息如下:Using sass-resources-loader with vue-cli v3.x
然而,在今天更新了所有内容之后,我在运行npm run serve
时遇到了以下错误:
TypeError: Cannot read property 'scss' of undefined
似乎进入.tap(options)
强的唯一选项是:
{ compilerOptions: { preserveWhitespace: false } }
我目前对chainWebpack
个方面的知识还不足以进行有效的调试,但我正在努力.如果有人对导致这一错误的原因有任何见解,我们将不胜感激.
我的vue.config.js
:
const path = require('path')
module.exports = {
chainWebpack: (config) => {
config
.module
.rule('vue')
.use('vue-loader')
.tap((options) => {
console.log(options)
options.loaders.scss = options.loaders.scss.concat({
loader: 'sass-resources-loader',
options: {
resources: [
path.resolve('./src/scss/_variables.scss'),
path.resolve('./src/scss/_mixins.scss')
]
},
})
return options
})
config
.module
.rule('scss')
.use('sass-resources-loader')
.loader('sass-resources-loader')
.options({
resources: [
path.resolve('./src/scss/_variables.scss'),
path.resolve('./src/scss/_mixins.scss')
]
})
}
}