前言
项目环境:
Vue-cli
创建的vue2
项目这里把文档中的内容搬过来:
安装
sass-loader
- 注意:根据
node
版本来安装对应的sass-loader
的版本,不然有可能遇见不兼容的情况
- 注意:根据
自动化导入
如果你想自动化导入文件 (用于颜色、变量、mixin……),你可以使用 style-resources-loader。这里有一个关于 Stylus 的在每个单文件组件和 Stylus 文件中导入
./src/styles/imports.styl
的例子:js// vue.config.js const path = require('path') module.exports = { chainWebpack: config => { const types = ['vue-modules', 'vue', 'normal-modules', 'normal'] types.forEach(type => addStyleResource(config.module.rule('stylus').oneOf(type))) }, } function addStyleResource (rule) { rule.use('style-resource') .loader('style-resources-loader') .options({ patterns: [ path.resolve(__dirname, './src/styles/imports.styl'), ], }) }
你也可以选择使用 vue-cli-plugin-style-resources-loader。
实践
sass-loader
根据对应的node
版本安装安装
style-resources-loader
:bashnpm i style-resources-loader -D
配置:
js// vue.config.js function addStyleResource(rule) { rule .use('style-resource') .loader('style-resources-loader') .options({ patterns: [path.resolve(__dirname, './src/styles/index.scss')], }) } module.exports = { chainWebpack(config) { // const types = ['vue-modules', 'vue', 'normal-modules', 'normal'] const types = ['vue'] types.forEach(type => addStyleResource(config.module.rule('scss').oneOf(type))) }, }