Vue-cli3/vitejs/webpack使用style-resources-loader全局引入less/sass/scss全局变量

39 篇文章 3 订阅

文档

结合网上诸多无效方法,整理如下

方式一

注意是vue安装,不是npm!!!

vue add style-resources-loader

安装过程中选择less

修改根目录 vue.config.js 的patterns参数

// vue.config.js
const path = require("path");

module.exports = {
  pluginOptions: {
    "style-resources-loader": {
      preProcessor: "less",
      patterns: [path.resolve(__dirname, "src/global.less")]
    }
  }
};

方式二

// vue.config.js
module.exports = {
  css: {
    loaderOptions: {
      // 给 less-loader 传递 Less.js 相关选项
      less:{
         additionalData: `@import "~@/variables.less"`
       }      
    }
  }
}

方式三

cnpm i style-resources-loader -D
module.exports = {
  // 安装:style-resources-loader
  chainWebpack: (config) => {
    const oneOfsMap = config.module.rule("less").oneOfs.store;
    oneOfsMap.forEach(item => {
      item
        .use("style-resources-loader")
        .loader("style-resources-loader")
        .options({
          // 这里的路径不能使用 @ 符号,否则会报错
          // patterns: ["./src/assets/reset1.less", "./src/assets/reset2.less"]
          patterns: "./src/assets/reset.less"
        })
        .end()
    })
  }
};

vitejs配置方式

文档

// vite.config.js
export default defineConfig({
  css: {
    preprocessorOptions: {
      less: {
        additionalData: `@import "~@/variables.less"`
      }
    }
  }
})
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
10:35:56.822 Module build failed (from ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js): 10:35:56.830 SassError: Undefined variable: "$u-form-item-height". 10:35:56.830 on line 210 of D:\ideaWorkSpace\ehl-wx\applicationCenter\knowledgeBase\addQuestion.vue 10:35:56.839 >> line-height: $u-form-item-height; 10:35:56.848 ------------------^ 10:35:56.856 Module build failed (from ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js): 10:35:56.863 SassError: Undefined variable: "$u-form-item-height". 10:35:56.873 on line 220 of D:\ideaWorkSpace\ehl-wx\applicationCenter\examine\answerQuestion.vue 10:35:56.873 >> line-height: $u-form-item-height; 10:35:56.880 --------------------^ 10:35:56.880 Module build failed (from ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js): 10:35:56.889 SassError: Undefined variable: "$u-form-item-height". 10:35:56.896 on line 220 of D:\ideaWorkSpace\ehl-wx\applicationCenter\knowledgeBase\answerQuestion.vue 10:35:56.903 >> line-height: $u-form-item-height; 10:35:56.904 --------------------^ 10:35:56.913 Module build failed (from ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js): 10:35:56.913 SassError: Undefined variable: "$u-form-item-height". 10:35:56.921 on line 232 of D:\ideaWorkSpace\ehl-wx\applicationCenter\examine\addQuestion.vue 10:35:56.930 >> line-height: $u-form-item-height; 10:35:56.930 ------------------^ 10:35:56.938 Module build failed (from ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js): 10:35:56.938 SassError: Undefined variable: "$u-form-item-height". 10:35:56.946 on line 350 of D:\ideaWorkSpace\ehl-wx\pages\service\addService.vue 10:35:56.947 >> line-height: $u-form-item-height; 10:35:56.954 -------------------^解决
07-14

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值