因为在使用scss语法开发组件的时候,当需要使用公共样式文件(.scss)的变量时,需要使用 @import "" 引入;
而在每个组件文件中用 @import "" 引入十分繁琐,此时就需要全局引入scss的变量声明。
npm install sass-resources-loader -D
rules: [
{
test: /\.(scss)$/,
use: [
{
loader: 'sass-resources-loader',
options: {
resources: path.resolve(__dirname, './src/assets/styles/global.scss')
}
},
other-loaders...
]
}
]
module.exports = { chainWebpack: config => { const oneOfsMap = config.module.rule('scss').oneOfs.store oneOfsMap.forEach(item => { console.log(item) item .use('sass-resources-loader') .loader('sass-resources-loader') .options({ resources: path.resolve(__dirname, 'src/assets/style/global.scss') }) .end() }) } }
module.exports = {
css: {
loaderOptions: {
sass: {
data: @import "@/assets/style/global.scss"
}
}
}
}