vue如何通过自定loader修改css样式,css用的是less
vuecli想通过自定义loader修改css样式,css用的是less,配置了但有问题
module.exports = {
chainWebpack: (config) => {
// console.log('config')
// console.log(config)
// 找到默认的处理 .css 文件的规则
config.resolveLoader.modules // 配置寻找 loader 的目录
.add(path.resolve(__dirname, './loaders/')) // 添加自定义 loader 目录,比如 'my-loaders'
.end()
const cssRule = config.module.rule('less')
// console.log(cssRule)
// 添加需要的 loader
cssRule
.use('custom-loader')
.loader('custom-loader')
.end()
return config
}
}
这是我修改的vue.config.js,自定义的loader可以执行,但loader中打印的socurce是 extracted by mini-css-extract-plugin
module.exports = function(source) {
// 在 CSS 文件前面添加一个前缀
// return `.custom-prefix { ${source} }`
// 这里打印的source是 extracted by mini-css-extract-plugin
console.log(source)
return source
}
自定义loader看起来执行的时机不对,应该怎么配置呢