详解基于Vue cli开发修改外部组件Vant默认样式

 更新时间:2021年04月04日 09:05:01   作者:阿阿啊啊阿阿豪  
这篇文章主要介绍了详解基于Vue cli开发修改外部组件Vant默认样式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

前言

在引入外部组件的时候,想要修改默认样式,可以通过class修改,但一般会有权重不够等各种原因,官网其实列出了一套主题定制的方案,通过覆盖配置文件来修改样式,官网地址:主题定制

提示:以下是本篇文章正文内容,下面案例可供参考

一、Less

因为Vant 使用了 Less 对样式进行预处理,并内置了一些样式变量,可以通过替换样式变量即可定制你自己需要的主题。

给你的项目配置less:

npm install less --save-dev
npm install less-loader --save-dev

配置完先试一试less可不可以使用,如果报错,一般是因为版本高导致的。
可以试着降低版本

"less-loader": "^5.0.0",

二、引入你的组件

比如我这里引入的是Tab标签页组件

<van-tabs v-model="active">
 <van-tab title="标签 1">内容 1</van-tab>
 <van-tab title="标签 2">内容 2</van-tab>
 <van-tab title="标签 3">内容 3</van-tab>
 <van-tab title="标签 4">内容 4</van-tab>
</van-tabs>
export default {
 data() {
 return {
  active: 2,
 };
 },
};

它有默认样式,比如active的字体颜色,底部状态颜色等。

在这里插入图片描述

三、修改配置文件

第一步:直接引入less文件

在main.js里引入:

import 'vant/lib/index.less';

第二步:修改样式变量

找到你的vue.config.js文件,没有就在package.json同级新建一个配置文件,添加一下代码:

module.exports = {
 css: {
 loaderOptions: {
  less: {
  // 若 less-loader 版本小于 6.0,请移除 lessOptions 这一级,直接配置选项。
  lessOptions: {
   modifyVars: {
   // 直接覆盖变量
   'text-color': '#111',
   'border-color': '#eee',
   // 或者可以通过 less 文件覆盖(文件路径为绝对路径)
   hack: `true; @import "your-less-file-path.less";`,
   },
  },
  },
 },
 },
};

可以通过直接修改变量,也可以把清单列好成一个less文件引入,注意,如果less版本低的话,按照代码中的注释来。
再回到之前标签组件的使用文档,往下滑找的样式变量这一部分

在这里插入图片描述

那么它定义的一些关于组件的样式,你可以对着它的名字来修改你需要修改的样式,比如@tab-active-text-color这一个变量,应该就是表示active状态后字体的颜色,好,我现在需要将它修改为我想要的颜色,那么就在配置文件中修改一下

在这里插入图片描述

再重启下服务器,就可以看到组件的样式改变了

在这里插入图片描述

总结

到此这篇关于详解基于Vue cli开发修改外部组件Vant默认样式的文章就介绍到这了,更多相关Vuecli Vant默认样式内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • vue-cli3 打包优化之 splitchunks详解

    vue-cli3 打包优化之 splitchunks详解

    这篇文章主要介绍了vue-cli3 打包优化之 splitchunks的相关知识,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-07-07
  • vue项目打包优化的方法实战记录

    vue项目打包优化的方法实战记录

    最近入职了新公司,接手了一个新拆分出来的Vue项目,针对该项目做了个打包优化,把经验分享出来,下面这篇文章主要给大家介绍了关于vue项目打包优化的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-08-08
  • Vue项目中数据的深度监听或对象属性的监听实例

    Vue项目中数据的深度监听或对象属性的监听实例

    这篇文章主要介绍了Vue项目中数据的深度监听或对象属性的监听实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-07-07
  • Vue中的同步和异步调用顺序详解

    Vue中的同步和异步调用顺序详解

    这篇文章主要介绍了Vue中的同步和异步调用顺序,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-01-01
  • 详解vue 兼容IE报错解决方案

    详解vue 兼容IE报错解决方案

    这篇文章主要介绍了详解vue 兼容IE报错解决方案,详细的介绍了几种原因及其解决方案,非常具有实用价值,需要的朋友可以参考下
    2018-12-12
  • Vue+Echarts报错Cannot set properties of undefined (setting ‘plate‘)

    Vue+Echarts报错Cannot set properties of undefined (settin

    这篇文章主要介绍了Vue+Echarts报错Cannot set properties of undefined (setting ‘plate‘)的问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-08-08
  • vue2.0开发入门笔记之.vue文件的生成和使用

    vue2.0开发入门笔记之.vue文件的生成和使用

    本篇文章主要介绍了vue2.0开发入门笔记之.vue文件的生成和使用 ,非常具有实用价值,需要的朋友可以参考下
    2017-09-09
  • Vue环境搭建+VSCode+Win10的详细教程

    Vue环境搭建+VSCode+Win10的详细教程

    这篇文章主要介绍了Vue环境搭建+VSCode+Win10,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-08-08
  • Vue父组件监听子组件生命周期

    Vue父组件监听子组件生命周期

    这篇文章主要介绍了Vue父组件监听子组件生命周期,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-09-09
  • VUE项目去除input 框值所有空格的操作方法

    VUE项目去除input 框值所有空格的操作方法

    这篇文章主要介绍了VUE项目去除input 框值所有空格的操作方法,主要包括去除空格的方法、正则和element ui写法,本文给大家讲解的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-10-10

最新评论