vue3+vite 项目中怎么引入 elementplus 组件库

一:完整引入

  • 安装:npm i element-plus --save
  • 步骤:main.js 中添加以下内容
js 复制代码
import { createApp } from 'vue'
import App from './App.vue'

import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'

const app = createApp(App)
app.use(ElementPlus)
app.mount('#app')

二:按需引入

  • 安装:npm i element-plus --save
  • 安装插件:npm install -D unplugin-vue-components unplugin-auto-import
  1. 在 vite.config.ts 中添加配置
ts 复制代码
// vite.config.ts
import { defineConfig } from 'vite'
// 引入
import AutoImport from 'unplugin-auto-import/vite'
import Components from 'unplugin-vue-components/vite'
import { ElementPlusResolver } from 'unplugin-vue-components/resolvers'

export default defineConfig({
    // ...
    plugins: [
      	vue(),
    	// 按需引入组件的样式
        AutoImport({
            resolvers: [ElementPlusResolver()],
        }),
        Components({
            resolvers: [ElementPlusResolver()],
        }),
    ],
})
  1. src / plugins / element-plus.ts 配置按需引入组件
js 复制代码
import { ElButton, ElDialog } from "element-plus";
// 引入类型,加上 type
import type { App } from "vue"

const setupElementPlus = (app: App) => {
    app.use(ElButton)
    app.use(ElDialog)
}

export default setupElementPlus
  1. main.ts 导入该配置
js 复制代码
import setupElementPlus from './plugins/element-plus'
const app = createApp(App)
// 传入 app
setupElementPlus(app)
  1. App.vue 测试
js 复制代码
<el-button type="primary" :icon="Plus" @click="test">经典按钮</el-button>
<script lang="ts" setup>
import { Plus } from "@element-plus/icons-vue";
import { ElMessage } from "element-plus";
// 如果只是用组件 API,您需要手动导入样式
import "element-plus/es/components/message/style/css";

const test = () => {
    ElMessage.success("登陆成功");
};
</script>
相关推荐
子兮曰3 天前
jev-ultrafast 深度解析:7 秒订机票的浏览器 Agent 是如何炼成的
前端·后端·agent
子兮曰3 天前
Jev 爆发一周:7 秒 Agent 背后的 System One 生态与三场争议
前端·后端·ai编程
前端小万3 天前
写公众号赚了 3000 块后,我做了一款叫 "一键成稿" 的软件
前端·微信小程序
爱勇宝3 天前
ZCode 开源 24 小时:一份没有历史的账本,回答不了"有没有偷代码"
前端·后端·chatglm (智谱)
A黄俊辉A3 天前
uniapp webview中实现 app和内嵌的H5双向通信
vue.js·json
三十而立洋3 天前
Cookie 详解:从产生到安全,一次讲透
前端·javascript
卡布鲁3 天前
把一个 Vite + Vue3 应用塞进 qiankun (React + Umi3) 主站:十个坑的复盘
前端·javascript·react.js
honkun63 天前
vue 表格组件 vxe-table 配置 ajax 请求自动加载数据与表单查询
vue.js·vxe-table
kybs19913 天前
全球灾害数据分析可视化 毕业设计-附源码66794
vue.js·spring boot·mysql·安全·django·c#·asp.net
汉堡大王95273 天前
Jev:不是聊天机器人, 而是一个智能 if 语句
前端·人工智能·后端