fix(im): 迁移 Element UI 图标并修复 Vue 3 兼容问题

- 新增 migrate-legacy-icons 脚本,批量将旧图标替换为 legacy-el-icon 组件
- 多个组件中将 <i class="el-icon-*"> 统一改为 <legacy-el-icon name="el-icon-*">
- 将 size="mini"/"medium" 调整为 Element Plus 的 small/default
- 新增 legacy-el-icon 全局组件及图标映射逻辑
This commit is contained in:
田香琪
2026-07-22 13:36:44 +08:00
parent 12291ad4d5
commit 4bcaf14bad
39 changed files with 329 additions and 115 deletions

View File

@@ -0,0 +1,25 @@
<template>
<el-icon v-bind="$attrs">
<component :is="iconComponent" v-if="iconComponent" />
</el-icon>
</template>
<script>
import { resolveLegacyIcon } from "@/core/legacy-icon-map";
export default {
name: "LegacyElIcon",
inheritAttrs: false,
props: {
name: {
type: String,
default: "",
},
},
computed: {
iconComponent() {
return resolveLegacyIcon(this.name);
},
},
};
</script>