ElementPlus按需加载 + 配置中文避坑(干掉1MB冗余代码)

最近优化项目性能时发现,之前为了省事直接全量引入了ElementPlus(明明只用了个日历组件!),首页直接白嫖了1MB资源包。必须按需加载!!

成果如下:资源体积-1MB / FCP-0.3s,记录关键步骤


解法核心

用两个插件(unplugin-auto-import负责自动导入API,unplugin-vue-components负责自动注册组件),只打包你用到的组件和样式

1. 安装全家桶

html 复制代码
pnpm add element-plus  # 库本体  
pnpm add -D unplugin-auto-import unplugin-vue-components  # 核心工具:自动导API+组件  

2. Vite配置抄作业(10 秒搞定)

js 复制代码
// vite.config.ts
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: [
    AutoImport({ resolvers: [ElementPlusResolver()] }), // 自动导API
    Components({ resolvers: [ElementPlusResolver()] })    // 自动导组件
  ]
})

3. 中文配置(如果需要)

由于 Elment-Plus 默认是英文版的,我们还需要给他加个中文配置

只需要用ElConfigProvider来给他进行个笼罩,配置 locale 属性即可。

html 复制代码
// App.vue
<template>  
  <el-config-provider :locale="zhCn">  <!-- 这里塞中文包 -->  
    <router-view />  
  </el-config-provider>  
</template>  
  
<script setup>
import { RouterView } from 'vue-router'
import { ElConfigProvider } from 'element-plus'
import zhCn from 'element-plus/es/locale/lang/zh-cn'
</script>
相关推荐
故事与九3 分钟前
vue3使用vue-pdf-embed实现前端PDF在线预览
前端·vue.js·pdf
小西↬3 分钟前
vite+vue3+websocket处理音频流发送到后端
javascript·websocket·音视频
Mintopia1 小时前
🚀 顶点-面碰撞检测之诗:用牛顿法追寻命运的交点
前端·javascript·计算机图形学
wb1891 小时前
企业WEB应用服务器TOMCAT
运维·前端·笔记·tomcat·云计算
熬了夜的程序员1 小时前
【华为机试】34. 在排序数组中查找元素的第一个和最后一个位置
数据结构·算法·华为od·华为·面试·golang
烛阴1 小时前
解锁 Gulp 的潜力:高级技巧与工作流优化
前端·javascript
Entropy-Lee2 小时前
JavaScript 语句和函数
开发语言·前端·javascript
Wcowin2 小时前
MkDocs文档日期插件【推荐】
前端·mkdocs
小徐不徐说3 小时前
C++ 模板与 STL 基础入门:从泛型编程到实战工具集
开发语言·数据结构·c++·qt·面试
xw53 小时前
免费的个人网站托管-Cloudflare
服务器·前端