在vue3.0中如何正确使用antdv,有哪些坑要注意
Admin 2022-06-14 群英技术资讯 982 次浏览
随着我们vue3.0的出现,我们的ui组件库也有了一些变化,像我们的旧版的element-ui已经不能在vue3.0中使用了,如果要使用element的话需要使用最新版的element-plus,由于发现它并不太好用,因此我选择了Ant Design Vue。
如果我们以前经常使用antd的话,我们使用起来这个上手会非常方便。
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);
在我们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);
经过这个配置后我们可能会发现我们的主题并没有生效。他不报错也没有任何提示,这个时候我又去看文档发现自己遗漏了很重要的一条信息,如下图:
我们的这个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'; // 用于覆盖上面定义的变量
具体还是参考我们的 官方文档。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
jquery求浏览器宽度的方法:1、利用“$()”方法获取浏览器窗口对象;2、利用width()方法来求指定浏览器对象的宽度,该方法用于返回或者设置匹配元素的宽度,语法为“$(window).width()”。
newArray(arg1,arg2,…),当参数长度为0或大于等于2时,传入的参数将依次成为新数组的第0至第N项。newArray(len),当len不是数值时,返回一个只包含len元素的数组。
这个只是一个分页的demo,主要是思路整理(很久之前项目用的东西)分页实现的效果 主要是 左侧上一页 右侧是下一页 中间显示主要是超过5个显示 省略号 然后是可配置选项实现之后的效果首先需要初始化该对象的一些基本属性,显示总页码数,中间显示的页面数, 添加一个回调函数,在页面变化激活回调函数并返回当前页面和一些需要的其
在javascript中,lastindexof()用于在数组中查找元素,可返回指定元素值在数组中最后出现的位置(下标值),语法“array.lastIndexOf(item,start)”;如果返回值为“-1”,则指定元素不存在数组中。
这篇文章主要为大家详细介绍了vue实现本地存储添加删除修改功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008