【Vite+Ts】自动按需引入Element-Plus

安装插件

javascript 复制代码
cnpm i -D unplugin-vue-components unplugin-auto-import unplugin-element-plus

修改vite.config.ts

javascript 复制代码
// vite.config.ts
import AutoImport from "unplugin-auto-import/vite";
import Components from "unplugin-vue-components/vite";
import { ElementPlusResolver } from "unplugin-vue-components/resolvers";
import ElementPlus from "unplugin-element-plus/vite";

export default defineConfig({
  // ...
  plugins: [
   vue(),
   AutoImport({
     resolvers: [ElementPlusResolver()],
     dts: "types/auto-generate/auto-import.d.ts",
   }),
   Components({
     resolvers: [ElementPlusResolver()],
     dts: "types/auto-generate/components.d.ts",
   }),
   ElementPlus({}),
 ],
})

然后就可以使用了!图标的我就直接全局导入了,想自动导入看下面:

icon图标自动导入:

javascript 复制代码
cnpm i -D unplugin-icons

vite.config.ts增加:

javascript 复制代码
// 自动导入图标
import Icons from 'unplugin-icons/vite'
import IconsResolver from 'unplugin-icons/resolver'
// plugins修改:
AutoImport({
  resolvers: [
  	ElementPlusResolver(),
  	// 自动导入图标组件
    IconsResolver({
      prefix: 'Icon',
    })
  ],
  dts: "types/auto-generate/auto-import.d.ts",
}),
Components({
  resolvers: [
  	ElementPlusResolver(),
  	// 自动注册图标组件
    IconsResolver({
      enabledCollections: ['ep'],
    }),
  ],
  dts: "types/auto-generate/components.d.ts",
}),
// 导入图标组件
Icons({
    autoInstall: true,
})

用法:
<el-icon><Plus /></el-icon>  错误
<el-icon><i-ep-plus /></el-icon>  正确

必须要加i-ep

关于页面 ElMessageBox 报错问题:

我目前最快的解决办法只能是单独引入ElMessageBox。有更好的方法欢迎留言。

用法:

javascript 复制代码
<script setup lang="ts">
import { ElMessageBox } from "element-plus";
ElMessageBox({/**/})
</script>

感谢你的阅读,如对你有帮助请收藏+关注!

只分享干货实战精品从不啰嗦!!!

如某处不对请留言评论,欢迎指正~

博主可收徒、常玩QQ飞车,可一起来玩玩鸭~

相关推荐
SuperEugene2 小时前
Vue生态精选篇:Element Plus 的“企业后台常用组件”用法扫盲
前端·vue.js·面试
Neptune12 小时前
JavaScript回归基本功之---类型判断--typeof篇
前端·javascript·面试
进击的尘埃2 小时前
微前端沙箱隔离:qiankun 和 wujie 到底在争什么
javascript
子兮曰3 小时前
后端字段又改了?我撸了一个 BFF 数据适配器,从此再也不怕接口“屎山”!
前端·javascript·架构
颜酱5 小时前
一步步实现字符串计算器:从「转整数」到「带括号与优化」
javascript·后端·算法
比尔盖茨的大脑5 小时前
事件循环底层原理:从 V8 引擎到浏览器实现
前端·javascript·面试
bluceli5 小时前
Vue 3 Composition API深度解析:构建可复用逻辑的终极方案
前端·vue.js
程序员ys5 小时前
前端权限控制设计
前端·vue.js·react.js
卓卓不是桌桌5 小时前
如何优雅地处理 iframe 跨域通信?这是我的开源方案
javascript·架构
滕青山5 小时前
腾讯域名拦截查询 在线工具核心JS实现
前端·javascript·vue.js