vant定制主题(亲测有效记录)

vant定制主题

https://youzan.github.io/vant/#/zh-CN/theme 这是官网给的说明,官方的说明其实写的不够详细。在这过程中遇到了一些坑。

一、为什么需要自定义主题。

  当vant的主题不满足你的要求时可以根据自己的要求进行修改,比如:所有的颜色要改。

二、自定义主题

vue cli3.0版本的

主要步骤:


第一步

需要在main.js引入less文件。具体说应该是nodemoudule文件夹下 vant/lib/index.less

import 'vant/lib/index.less';

vant定制主题(亲测有效记录)_第1张图片

第二步

安装less

npm install less less-loader --save-dev

第三步

创建属于自己的less,比如:resetui.less
vant定制主题(亲测有效记录)_第2张图片

第四步

引入自己的less
打开vue.config.js文件,找到如下图:
vant定制主题(亲测有效记录)_第3张图片注意:${path.join(__dirname,‘自己的less文件所在位置’)}是获取绝对路径
按照vant官方的说明添加:

   modifyVars: {
          // 或者可以通过 less 文件覆盖(文件路径为绝对路径)
          hack: `true; @import "${path.join(
            __dirname,
            "./src/assets/common/resetui.less"//这个import 的路径必须是绝对路径
          )}";`
          //hack: `true; @import "@/common/resetui.less";`
        }

第五步

也是最容易忽略的一步:

我们需要对babel.config.js文件做一些修改:

"plugins": ["transform-vue-jsx", "transform-runtime",["import", {

"libraryName": "vant",

// "style": true

}]]

注意:我们这里删除了style:true,


第六步

修改vant样式,这是less变量参考:https://github.com/youzan/vant/blob/dev/src/style/var.less,我贴了一些button变量,到自己的less文件中。
vant定制主题(亲测有效记录)_第4张图片
第七步

需要关闭本地localhost:8080,重新开启。重新编译less,才可以达到效果

修改之前:
vant定制主题(亲测有效记录)_第5张图片
修改之后:
vant定制主题(亲测有效记录)_第6张图片

你可能感兴趣的:(vant,定制主题)