1.antDesign 官网 快速上手 - Ant Design Vue (antdv.com)
安装ui组件库,和按需引入的插件
npm i --save ant-design-vue
npm i unplugin-vue-components -D
2.配置vite (config.js)
//自动导入ui-组件 比如说ant-design-vue element-plus等
import Components from "unplugin-vue-components/vite";
//ant-design-vue
import { AntDesignVueResolver } from "unplugin-vue-components/resolvers";
// https://vitejs.dev/config/
export default defineConfig({
plugins: [
vue(),
Components({
//ant-design-vue importStyle = false 样式就没了
resolvers: [
AntDesignVueResolver({ importStyle: "less", resolveIcons: true }),
],
}),
],
});
3.main.js(此步省略,按需引入不需要在注册)
//ant-design-vue
import Antd from "ant-design-vue";
import "ant-design-vue/dist/antd.css";
const app = createApp(App);
app.use(Antd);
4.unplugin-vue-components
插件无法处理非组件模块,如 message、Modal、notification、Icon等,这种组件需要手动加载:
//在用到的页面,script里引用组件和对应的样式
import { Modal, message } from 'ant-design-vue';
import 'ant-design-vue/es/message/style/css';
import 'ant-design-vue/es/modal/style/css';
//使用
message.info('1111111')
5.但是每次都要引入非组件模块都要这样引入样式,我们可以用另一种方式,挂载一个全局对象
在src目录新建一个base.js/ts文件,引入内容 (之后再main.js中引入此文件)
import { Modal, message } from 'ant-design-vue';
import 'ant-design-vue/es/message/style/css';
import 'ant-design-vue/es/modal/style/css';
export default{
install(app){
//挂载全局对象
app.config.globalProperties.$message=message
app.config.globalProperties.$Modal=Modal
}
}
6.全局注册
//main.js
import base from './base'
const app=createApp(APP)
//注册使用
app.use(base)
//在某个页面使用的时候
1.import {getCurrentInstance} from 'vue'
const {proxy}=getCurrentInstance()
2.使用
proxy.$message.info('1111111')