春燕衔泥_001 2024-05-16 18:43 采纳率: 75%
浏览 13

uniapp小程序怎么配置全局导入less文件


 vue.config.js中配置,已安装less,lessloader,style-resources-loader

// 方法1:报错less文件里的变量undefined
const path = require('path')
module.exports = {
    pluginOptions: {
        'style-resources-loader': {
            preProcessor: 'less',
            patterns: [
                path.join(__dirname, './style/less/vars.less')
            ]
        }
    }
}

// 方法2:报错config.plugin(...).use(...).options is not a function
const path = require('path')
module.exports = {
    chainWebpack: config => {
        config.plugin('style-resources')
            .use(require('style-resources-loader'))
            .options({
                patterns: [
                    path.resolve(__dirname, './style/less/vars.less')
                ]
            })
    }
}

请问应该怎么配置

  • 写回答

2条回答 默认 最新

  • 阿里嘎多学长 2024-05-16 18:43
    关注

    以下内容由CHATGPT及阿里嘎多学长共同生成、有用望采纳:


    您想要解决的问题

    您提问的目的是想要解决在uni-app小程序项目中如何正确配置全局导入less文件的问题。

    问题出现原因

    1. 方法1:报错less文件里的变量undefined可能是因为在less文件中定义的变量没有被正确引用或者less文件的路径没有被正确解析。
    2. 方法2:报错config.plugin(...).use(...).options is not a function可能是因为chainWebpack的用法不正确,或者style-resources-loader的配置方式有误。

    问题解决方案

    针对uni-app项目,全局导入less文件并正确使用变量,可以按照以下步骤进行配置:

    1. 确保lessless-loader已经安装。
    2. 使用style-resources-loader来全局引入less变量文件。

    提供代码

    以下是修改后的vue.config.js配置示例:

    module.exports = {
      // ...
      chainWebpack: (config) => {
        config.module
          .rule('less')
          .use('less-loader')
          .tap((options) => {
            // 修改 less-loader 的 options
            return {
              ...options,
              lessOptions: {
                modifyVars: {
                  // 在这里定义你的全局less变量
                },
                javascriptEnabled: true,
              },
            };
          });
    
        config.plugin('style-resources-loader')
          .use(require.resolve('style-resources-loader'), {
            patterns: [
              path.resolve(__dirname, './style/less/vars.less'),
            ],
          });
      },
      // ...
    };
    

    代码运行方式

    1. 确保你的项目已经安装了vue-cli
    2. 将上述代码替换到项目的vue.config.js文件中。
    3. 重新启动开发服务器。

    代码预期运行结果

    • 全局less变量应该能够被正确加载并应用到项目中的所有less文件。

    推荐相关链接

    请根据这些步骤和配置进行尝试,并根据项目的具体需求调整代码。如果问题依然存在,可能需要进一步检查项目配置或寻求社区的帮助。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 5月16日

悬赏问题

  • ¥15 Windows Script Host 无法找到脚本文件"C:\ProgramData\Player800\Cotrl.vbs”
  • ¥15 matlab自定义损失函数
  • ¥15 35114 SVAC视频验签的问题
  • ¥15 impedancepy
  • ¥15 求往届大挑得奖作品(ppt…)
  • ¥15 如何在vue.config.js中读取到public文件夹下window.APP_CONFIG.API_BASE_URL的值
  • ¥50 浦育平台scratch图形化编程
  • ¥20 求这个的原理图 只要原理图
  • ¥15 vue2项目中,如何配置环境,可以在打完包之后修改请求的服务器地址
  • ¥20 微信的店铺小程序如何修改背景图