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>
相关推荐
Jerry16 分钟前
Compose 基础知识测试
前端
changuncle24 分钟前
Angular初学者入门第三课——工厂函数(精品)
前端·javascript·angular.js
ScottePerk42 分钟前
前端安全之XSS和CSRF
前端·安全·xss
PineappleCoder43 分钟前
Canvas 复杂交互步骤:从事件监听 to 重新绘制全流程
前端
日月晨曦1 小时前
JavaScript事件循环:一次浏览器线程的"约会"指南
javascript
s3xysteak1 小时前
我要成为vue高手01:上下文
前端·javascript·vue.js
复苏季风1 小时前
前端居中布局:从 "卡壳" 到 "精通" 的全方位指南
前端·css
qb1 小时前
vue3.5.18源码:computed 在发布订阅者模式中的双重角色
前端·vue.js·架构
南篱1 小时前
JavaScript原型链没那么难:一文彻底搞懂
javascript·面试
程序员张31 小时前
Vue3+ElementPlus倒计时示例
javascript·vue.js·前端框架