vue3.0中友好使用antdv示例详解


Posted in Vue.js onJanuary 05, 2021

前言

随着我们vue3.0的出现,我们的ui组件库也有了一些变化,像我们的旧版的element-ui已经不能在vue3.0中使用了,如果要使用element的话需要使用最新版的element-plus,由于发现它并不太好用,因此我选择了Ant Design Vue。

如果我们以前经常使用antd的话,我们使用起来这个上手会非常方便。

在vue3.0中引入我们的antdv

1.首先使用我们的vue/cli创建vue3.0项目并使用less

2. 在vue3.0中使用的话我们需要安装 ant-design-vue@next 版本,安装完之后,我们只需要在main.js文件中把antdv引入到全局(由于博主比较懒,为了省事,并没有按需加载),这样我们就可以使用所有的组件了(icon除外)。如果想按需加载请参考 官方文档。

import { createApp } from 'vue';
import Antd from 'ant-design-vue';
import App from './App';
import 'ant-design-vue/dist/antd.css';

const app = createApp();
app.config.productionTip = false;

app.use(Antd);

在项目中使用图标(icon)

在我们vue3.0中我们使用icon需要在我们使用的地方额外的引入我们的icon库,如下写法

import { UserOutlined } from '@ant-design/icons-vue';

由于我们的vue的标签并不支持驼峰命名法,在我们的template中使用的时候需要,换成短横线的连接的方式如下:

<user-outlined />

在项目中定制主题(遇坑)

antd 的样式使用了 Less 作为开发语言,并定义了一系列全局/组件的样式变量,你可以根据需求进行相应调整。
我们有两种方式可以定制主题:一是创建我们的vue.config.js文件进行配置,二是创建一个less文件进行变量覆盖。

创建vue.config.js文件

module.exports = {
 css: {
 loaderOptions: {
  less: {
  lessOptions: {
   modifyVars: {
   'primary-color': '#1DA57A',
   'link-color': '#1DA57A',
   'border-radius-base': '2px',
   },
   javascriptEnabled: true,
  },
  },
 },
 },
};

并且我们要把main中改为如下

import { createApp } from 'vue';
import Antd from 'ant-design-vue';
import App from './App';
- import 'ant-design-vue/dist/antd.css';
+ import 'ant-design-vue/dist/antd.less';
const app = createApp();
app.config.productionTip = false;

app.use(Antd);

经过这个配置后我们可能会发现我们的主题并没有生效。他不报错也没有任何提示,这个时候我又去看文档发现自己遗漏了很重要的一条信息,如下图:

vue3.0中友好使用antdv示例详解

我们的这个less-loader必须是6.0.0的

但是这个啥时候我看vue/cli中默认下载的是5.0.0的包。因此在把less-loader升级到6.0.0之后,问题也就解决了。

2. 建立一个单独的 less 变量文件,引入这个文件覆盖 antd.less 里的变量。

@import '~ant-design-vue/dist/antd.less'; // 引入官方提供的 less 样式入口文件
@import 'your-theme-file.less'; // 用于覆盖上面定义的变量

具体还是参考我们的 官方文档。

按需加载很重要!!! 但是由于博主很懒。暂时还没有在vue3.0尝试。

到此这篇关于vue3.0中友好使用antdv的文章就介绍到这了,更多相关vue3.0使用antdv内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Vue.js 相关文章推荐
详解Vue 的异常处理机制
Nov 30 Vue.js
Vue router安装及使用方法解析
Dec 02 Vue.js
Vue+penlayers实现多边形绘制及展示
Dec 24 Vue.js
vue实现防抖的实例代码
Jan 11 Vue.js
Vue中引入svg图标的两种方式
Jan 14 Vue.js
vue3.0 自适应不同分辨率电脑的操作
Feb 06 Vue.js
详解Vue的七种传值方式
Feb 08 Vue.js
Vue实现动态查询规则生成组件
May 27 Vue.js
vue+element ui实现锚点定位
Jun 29 Vue.js
vue3中provide && inject的使用
Jul 01 Vue.js
Vue监视数据的原理详解
Feb 24 Vue.js
vue+elementUI实现表格列的显示与隐藏
Apr 13 Vue.js
基于Vue2实现移动端图片上传、压缩、拖拽排序、拖拽删除功能
Jan 05 #Vue.js
Vue+scss白天和夜间模式切换功能的实现方法
Jan 05 #Vue.js
jenkins自动构建发布vue项目的方法步骤
Jan 04 #Vue.js
vue3弹出层V3Popup实例详解
Jan 04 #Vue.js
vue3自定义dialog、modal组件的方法
Jan 04 #Vue.js
vue中父子组件的参数传递和应用示例
Jan 04 #Vue.js
如何在VUE中使用vue-awesome-swiper
Jan 04 #Vue.js
You might like
学习php中的正则表达式
2014/08/17 PHP
PHP文件上传之多文件上传的实现思路
2016/01/27 PHP
A标签中通过href和onclick传递的this对象实现思路
2013/04/19 Javascript
javaScript array(数组)使用字符串作为数组下标的方法
2013/11/19 Javascript
你可能不知道的JavaScript的new Function()方法
2014/04/17 Javascript
JavaScript的arguments对象应用示例
2014/09/15 Javascript
js读取cookie方法总结
2014/10/31 Javascript
node.js中的fs.writeSync方法使用说明
2014/12/15 Javascript
js获取会话框prompt的返回值的方法
2015/01/10 Javascript
javascript实现base64 md5 sha1 密码加密
2015/09/09 Javascript
分享纯手写漂亮的表单验证
2015/11/19 Javascript
常常会用到的截取字符串substr()、substring()、slice()方法详解
2015/12/16 Javascript
Javascript中神奇的this
2016/01/20 Javascript
深入理解JavaScript单体内置对象
2016/06/06 Javascript
JS实现表单多文件上传样式美化支持选中文件后删除相关项
2016/09/30 Javascript
JavaScript  event对象整理及详细介绍
2016/10/10 Javascript
深入浅析Vue组件开发
2016/11/25 Javascript
JS正则表达式判断有效数实例代码
2017/03/13 Javascript
require.js 加载过程与使用方法介绍
2018/10/30 Javascript
深入浅析Vue 中 ref 的使用
2019/04/29 Javascript
vue-父子组件和ref实例详解
2019/11/10 Javascript
JS Html转义和反转义(html编码和解码)的实现与使用方法总结
2020/03/10 Javascript
vue中解决拖拽改变存在iframe的div大小时卡顿问题
2020/07/22 Javascript
Vue基于iview table展示图片实现点击放大
2020/08/05 Javascript
利用js canvas实现五子棋游戏
2020/10/11 Javascript
Python实现发送QQ邮件的封装
2017/07/14 Python
Python用 KNN 进行验证码识别的实现方法
2018/02/06 Python
Python实现字符串中某个字母的替代功能
2019/10/21 Python
Python 列表的清空方式
2020/01/13 Python
美国购买新书和二手书网站:Better World Books
2018/10/31 全球购物
原料仓管员岗位职责
2014/04/12 职场文书
勤俭节约演讲稿
2014/05/08 职场文书
大学生优秀班干部事迹材料
2014/05/26 职场文书
自我介绍演讲稿范文
2014/08/21 职场文书
努力学习保证书
2015/02/26 职场文书
关于SpringBoot 使用 Redis 分布式锁解决并发问题
2021/11/17 Redis