vue@cli3中配置vant主题,引入主题文件时报错

发布于 2022-09-12 00:23:24 字数 806 浏览 20 评论 0

 css: {
    loaderOptions: {
      less: {
        modifyVars: {
          // 或者可以通过 less 文件覆盖(文件路径为绝对路径)
          'hack': `true; @import "$src/assets/css/theme.less";`
        }
      }
    }
  } 

clipboard.png

但是

  css: {
    loaderOptions: {
      sass: {
        data: `
          @import "$src/assets/css/mixin.scss";
        `
      },
      less: {
        modifyVars: {
          red: '#ccc',
          blue: '#3eaf7c',
          orange: '#f08d49',
          'text-color': '#111'
        }
      }
    }
  } 

这样直接修改确是可以的,请教这个写的有问题吗?和官网一样的啊
vant

只是我用的是ts, 用的 ts-import-plugin

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

痴意少年 2022-09-19 00:23:24

要这样子

modifyVars: {
  hack: `true; @import "${path.join(
    __dirname,
    './assets/styles/vant-ui/variables.less'
  )}";`
}
罪歌 2022-09-19 00:23:24

您好,请问您这个问题解决了嘛?我也遇到了这个问题。

帅冕 2022-09-19 00:23:24

@静海孤城
`
vue.config.js
const tsImportPluginFactory = require('ts-import-plugin')

configureWebpack: (config) => {

// 使用ts-important-plugin 动态引入vant 
config.module = {
  rules: [
    // 配置新的 使用config的话 必须要将原来的和现在的合并,而且使用新的在后面覆盖旧的
    ...config.module.rules,
    {
      test: /\.(jsx|tsx|js|ts)$/,
      loader: 'ts-loader',
      options: {
        happyPackMode: true, // 打包相关
        transpileOnly: true,
        getCustomTransformers: () => ({
          before: [ tsImportPluginFactory( {
            libraryName: 'vant',
            libraryDirectory: 'es',
            style: name => `${name}/style/less` // 配置vant主题文件
          })]
        }),
        compilerOptions: {
          module: 'es2015'
        }
      },
      exclude: /node_modules/
    }
  ]
}

},

`

情释 2022-09-19 00:23:24

大佬,能看一下,你是怎么配置按需加载vant组件的吗,我也是用的vue+ts

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文