# 图标组件使用说明 ## 功能特性 - 支持多种图标库:Ant Design、Element Plus、Carbon、IC、Lucide、Ri 等 - 支持自定义图标 - 支持图标选择器组件 - 支持离线模式 ## 安装依赖 ```bash pnpm add @iconify/vue @iconify/json ``` ## 使用方式 ### 1. 基础图标组件 (Iconify) ```vue ``` ### 2. 自定义尺寸和颜色 ```vue ``` ### 3. 图标选择器 (IconSelector) ```vue ``` ### 4. 监听图标选择事件 ```vue ``` ## 支持的图标库 | 图标库 | 前缀 | 示例 | |--------|------|------| | Ant Design | `ant-design` | `ant-design:home-outlined` | | Element Plus | `ep` | `ep:home-filled` | | Carbon | `carbon` | `carbon:home` | | IC | `ic` | `ic:baseline-home` | | Lucide | `lucide` | `lucide:home` | | Ri | `ri` | `ri:home-line` | ## 自定义添加图标库 ### 1. 安装图标库 ```bash pnpm add @iconify-json/your-icon-library ``` ### 2. 在 load-icon.ts 中添加 ```typescript import YourIcons from '@iconify/json/json/your-icon-library.json' addCollection(YourIcons) ``` ### 3. 在 icon-selector.vue 中添加 ```typescript const iconifyPrefixs = ['ant-design', 'carbon', 'ic', 'lucide', 'ep', 'ri', 'your-icon-library'] ``` ## 配置说明 ### 离线模式 在 `.env` 文件中配置: ```env VITE_APP_ICON_OFFLINE=true VITE_APP_ICONIFY_PREFIX=ant-design,carbon,ic,lucide,ep,ri ``` ### 图标选择器配置 | 属性 | 类型 | 默认值 | 说明 | |------|------|--------|------| | modelValue | string | '' | v-model 绑定的图标值 | | text | string | '图标选择器' | 显示文本 | | width | string | '200px' | 组件宽度 | | size | string | 'default' | 组件大小:large/default/small | | disabled | boolean | false | 是否禁用 | ## 注意事项 1. 图标名称格式:`图标库名称:图标名称` 2. 离线模式下需要预先加载所有图标数据 3. 图标选择器支持搜索功能 4. 图标选择器支持分页显示 ## 示例代码 完整示例请参考项目中的使用场景。