antDesignVue 使用-持续更新

背景

vue3+vite+antdesignvue+vue-router

1,全局完整注册

1.1下载antdesignvue

npm i --save ant-design-vue

或者

npm install ant-design-vue@next --save

1.2在mian.ts中引入

import { createApp } from 'vue'
import { createPinia } from 'pinia'import App from './App.vue'
import router from '@/router'import Antd from 'ant-design-vue';
import 'ant-design-vue/dist/reset.css';const app = createApp(App)app.use(createPinia())
app.use(Antd)
app.use(router)
app.mount('#app')

注意:.css文件有更新,不再是

import App from './App';
import 'ant-design-vue/dist/antd.css';

而是

import Antd from 'ant-design-vue';
import 'ant-design-vue/dist/reset.css';

可以具体看一下node_module中的文件。

1.3App.vue中进行使用

<script setup lang="ts">
...
</script><template><h1>app</h1><a-button type="text">Text Button</a-button><a-button type="link">Link Button</a-button></template><style></style>

2,按需动态自动引入-

(下面改用pnpm包管理器,npm yarn pnpm 自选即可)

2.1下载antdesignvue

 pnpm i --save ant-design-vue

2.2下载 babel-plugin-import

pnpm i --save ant-design-vue

2.3配置babel.config.ts文件

没有babel.config.ts文件则新建一个即可

//babel.config.ts
module.exports = {presets: ['@vue/cli-plugin-babel/preset'],plugins: [["import",{libraryName: "ant-design-vue",libraryDirectory: "es",style: true,   // `style: true` 会加载 less 文件}]]
}

2.4main.js文件中注册 所需组件

import './assets/main.css'import { createApp } from 'vue'
import { createPinia } from 'pinia'import App from './App.vue'
import router from './router'
import { Button } from 'ant-design-vue';const app = createApp(App)app.use(createPinia())
app.use(router)
app.use(Button)app.mount('#app')

2.5页面中使用Button组件

<script setup lang="ts">
</script><template><a-button type="primary">Primary Button</a-button><a-button>Default Button</a-button><a-button type="dashed">Dashed Button</a-button><a-button type="text">Text Button</a-button><a-button type="link">Link Button</a-button>
</template><style scoped>
</style>

带有图标icon的按钮button

<script setup lang="ts">
import { SearchOutlined } from '@ant-design/icons-vue';</script><template><a-button type="primary">Primary Button</a-button><a-button>Default Button</a-button><a-button type="dashed">Dashed Button</a-button><a-button type="text">Text Button</a-button><a-button type="link">Link Button</a-button><hr style="margin-top: 36px;"><div class="iconButton" style="margin-top: 36px;"><a-button type="primary" shape="circle"><template #icon><SearchOutlined /></template></a-button><a-button type="primary" shape="circle">A</a-button><a-button type="primary"><template #icon><SearchOutlined /></template>Search</a-button><a-button shape="circle"><template #icon><SearchOutlined /></template></a-button><a-button><template #icon><SearchOutlined /></template>Search</a-button><a-button shape="circle"><template #icon><SearchOutlined /></template></a-button><a-button><template #icon><SearchOutlined /></template>Search</a-button><a-button type="dashed" shape="circle"><template #icon><SearchOutlined /></template></a-button><a-button type="dashed"><template #icon><SearchOutlined /></template>Search</a-button><a-button href="https://www.google.com"><template #icon><SearchOutlined /></template></a-button></div></template><style scoped></style>

2.6呈现效果

引用成功!

2.7layout的使用

(1)在main.ts中完成注册

import { Layout } from 'ant-design-vue'
import 'ant-design-vue/dist/reset.css'app.use(Layout)

(2)在.vue页面中使用

<template><div class="container"><a-layout class="layoutbox"><a-layout-sider>Sider</a-layout-sider><a-layout><a-layout-header>Header</a-layout-header><a-layout-content><h2>我是内容</h2></a-layout-content><a-layout-footer>Footer</a-layout-footer></a-layout></a-layout></div>
</template><style scoped>
.layoutbox {text-align: center;
}.ant-layout-header,.ant-layout-footer {color: #fff;background: #7dbcea;
}
[data-theme='dark']  .ant-layout-header {background: #6aa0c7;
}
[data-theme='dark']  .ant-layout-footer {background: #6aa0c7;
}.ant-layout-footer {line-height: 1.5;
}.ant-layout-sider {color: #fff;line-height: 120px;background: #3ba0e9;
}
[data-theme='dark']  .ant-layout-sider {background: #3499ec;
}.ant-layout-content {min-height: 120px;color: #fff;line-height: 120px;background: rgba(16, 142, 233, 1);
}
[data-theme='dark']  .ant-layout-content {background: #107bcb;
}</style>

总结

1,第一步是要完成所用组件的注册

2,第二步是使用的时候注意样式的生成,前缀的删除或者自命名类名进行相应样式的设置;

关于如何抽离这一部分  有待学习!

3,可能遇到的报错

原因是 antd 4+版本不带有 @ant-design/icons,包括 @ant-design/compatible 等等

解决办法

pnpm i @ant-design/icons-vue

持续更新!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/623518.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ST-LINK Utility 4.6.0 下载安装及使用方法介绍

一、介绍 STM32 ST-LINK Utility是针对STM32全系芯片进行编程&#xff08;读、写、擦除、选项字&#xff09;的一款工具。 STM32 ST-LINK Utility软件主要的功能就是量产&#xff08;批量下载代码的工具&#xff09;。它也是比较实用的一个工具&#xff0c;当我们需要查看芯片F…

关于用虚拟机安装ubuntu22.04出现的问题,和之前踩过的坑

文章目录 概要如果自己分区虚拟机长时间进不去ubuntu系统建议的分区大小小结 概要 利用虚拟机安装ubuntu的好处是在ubuntu下载的东西不会因为关机而删除 今天心血来潮&#xff0c;想要学习一下把linux系统装到u盘来使用&#xff0c;搜教程但是进行到的时候&#xff0c;出现了错…

用ChatGPT读了几百篇文献,我总结出了文献综述这些经验

点击下方▼▼▼▼链接直达AIPaperPass &#xff01; AIPaperPass - AI论文写作指导平台 近期小编会将学术论文写作每一个流程需要了解的细节与ChatGPT在这细节的背景下如何提升我们的学术论文进行分章节讨论。最终汇总成一篇长文攻略。宝子们敬请期待哦。今天我们来详细聊聊文…

【零基础入门TypeScript】模块

目录 内部模块 内部模块语法&#xff08;旧&#xff09; 命名空间语法&#xff08;新&#xff09; 两种情况下生成的 JavaScript 是相同的 外部模块 选择模块加载器 定义外部模块 句法 例子 文件&#xff1a;IShape.js 文件&#xff1a;Circle.js 文件&#xff1a;…

23年新增CSS属性 container容器查询 容器单位实现字体大小随容器变化而变化

container兼容性很好&#xff0c;见下图 一、container规则 MDN文档介绍&#xff08;由于这个属性是23新出&#xff0c;故mdn文档里是英文版本&#xff09; container规则&#xff0c;也称container查询&#xff0c;可以实时匹配指定为容器元素的尺寸&#xff0c;开发者可以基…

平台工程在企业数字化转型中的战略价值

要建设成功、有弹性和面向未来的平台&#xff0c;需要做到这三点&#xff1a;了解需求、预测可能面临的挑战并制定经得起时间考验的解决方案。 了解需求是指理解利益相关者的要求和目标&#xff0c;无论他们是最终用户、开发人员还是平台生态系统中的其他相关方。这包括开展全面…

一款功能齐全的iOS混淆工具介绍及功能详解

机缘巧合偶遇iOS马甲包业务&#xff0c;前期也使用过目前市面上其他得工具&#xff0c;实际效果不太理想。经过大量实践&#xff0c;开发出一款功能齐全的混淆工具。工具的主要功能OC、C、Swift已封装成Mac应用&#xff0c;其他功能还在封装中&#xff0c;敬请期待。 马甲包的本…

什么是对比分析法

在对各地区 GDP 增速进行分析时&#xff0c;常用到对比分析法&#xff0c;通过横纵对比&#xff0c;既有利于各地区较好地自我定位&#xff0c;也有利于其找出与其他地区的差距。 一、基本概念 对比分析法也称比较分析法&#xff0c;是把客观事物加以比较&#xff0c;从而认识…

淘宝扭蛋机小程序:扭转购物新风尚,开启惊喜连连之旅

随着移动互联网的飞速发展&#xff0c;淘宝作为国内领先的电商平台&#xff0c;始终致力于为用户带来更加新颖、有趣的购物体验。如今&#xff0c;我们隆重推出淘宝扭蛋机小程序&#xff0c;将传统扭蛋机的乐趣与电商购物的便捷完美结合&#xff0c;为用户带来前所未有的惊喜与…

【自由看门狗配置及计算】

一、看门狗使用场景 看门狗是一个硬件计时电路&#xff0c;用来监测由软件故障导致的系统故障。 片上有两个看门狗定时器外设&#xff0c;自由看门狗定时器&#xff08;FWDGT也叫独立看门狗&#xff09;和窗口看门狗定时器&#xff08;WWDGT&#xff09;。 当嵌入式程序在运…

Vue项目管理器创建项目

黑马程序员JavaWeb开发教程 文章目录 1、创建新项目2、详情3、预设4、功能5、配置6、是否保存为预设模板7、正在创建项目8、创建完成 1、创建新项目 2、详情 3、预设 选择手动&#xff0c;点击下一步 4、功能 只需要额外选择一项–Router 即可&#xff0c;其余的保持默认&a…

掼蛋小技巧(上篇)

一、一火保两单 如果手中的牌可以组成同花顺并且不会造成两张以上的单牌&#xff0c;我们就可以组成同花顺&#xff1b;如果组了同花顺后有两张以上的单张则果断放弃组同花顺。 二、十张出一对&#xff0c;九张出单张 掼蛋残局的时候&#xff0c;如果判断出下家手上只有一个四头…