关于 css 的配置
module.exports = {
css: {
// 将组件内的 css 提取到一个单独的 css 文件(只用于生产环境中)
// 也可以是一个传递给 extract-text-webpack-plugin 的选项对象
// 默认生产环境是 true,开发环境是 false
extract: true,
// 是否开启 css source map?默认为false
sourceMap: false,
// 为预处理器的 loader 传递自定义选项
// 支持的loader有css-loader、postcss-loader、sass-loader、less-loader、stylus-loader
loaderOptions: {
css: {
// 这里的选项会传递给 css-loader
},
postcss: {
// 这里的选项会传递给 postcss-loader
}
},
// 为所有的 css 及其预处理文件开启 CSS Modules
// 这个选项不会影响 *.vue 文件
modules: false
}
在 loaderOptions 那里,如果要使用 sass-loader 配置全局变量的话,通常是以下配置:
module.exports = {
css: {
loaderOptions: {
sass: {
prependData: `@import "@/styles/index.scss";` // 入口文件
}
}
}
这个时候要注意,不同版本的 sass-loader 使用的键名不同,我这里使用的是 prependData
,我的 sass-loader 版本是 ^8.0.2
。
sass-loader v8- , 这个选项名是 "data"
sass-loader v8中, 这个选项名是 "prependData"
sass-loader v10+中, 这个选项名是 "additionalData"