在開發中有時,我們定義了大量的基礎樣式變量,例如:
大量的vue單文件組件會用到這些變量,每個組件都引人一次又太麻煩。全局引入是個不錯的方法,於是,在main.js 中引入variable.styl文件,但是你會發現,並不起作用。
在查閱了vue cli官方文檔后發現,有官方支持的方法。
- 1、給sass樣式傳入共享的全局變量
有的時候你想要向 webpack 的預處理器 loader 傳遞選項。你可以使用 vue.config.js
中的 css.loaderOptions
選項。比如你可以這樣向所有 Sass 樣式傳入共享的全局變量:
// vue.config.js module.exports = { css: { loaderOptions: { // 給 sass-loader 傳遞選項 sass: { // @/ 是 src/ 的別名 // 所以這里假設你有 `src/variables.scss` 這個文件 data: `@import "~@/variables.scss";` } } } }
2、給stylus樣式傳入共享的全局變量
// vue.config.js 文件 module.exports = { css: { loaderOptions: { // 給 stylus-loader 傳遞選項 stylus: { import: '~@/common/stylus/color.styl' } } } }