elementplus自动导入配置,vite项目

自动导入组件和图标配置, 这些配置项其实看官网的也是可以的,不过配置图标的时候有个重要的依赖@iconify-json/ep ,官网没提, 也是很容易被忽略的一个依赖,缺了这个依赖,图标的自动导入是没有效果的,

下载依赖
  "dependencies": {
    "@element-plus/icons-vue": "^2.3.1", 
    "@iconify-json/ep": "^1.1.15",
    "element-plus": "^2.7.3",
  },
  "devDependencies": {
    "unplugin-auto-import": "^0.17.6",
    "unplugin-icons": "^0.19.0",
    "unplugin-vue-components": "^0.27.0",
  }

配置项

import { defineConfig } from "vite";
import vue from "@vitejs/plugin-vue";
import path from "path";
import Icons from "unplugin-icons/vite";
import IconsResolver from "unplugin-icons/resolver";
import AutoImport from "unplugin-auto-import/vite";
import Components from "unplugin-vue-components/vite";
import { ElementPlusResolver } from "unplugin-vue-components/resolvers";
// 这个依赖和题目无关
import Inspect from "vite-plugin-inspect";

export default defineConfig({
  plugins: [
    vue(),
    AutoImport({
      imports: ["vue", "vue-router"],
      dts: "src/types/auto-import.d.ts", // 路径下自动生成文件夹存放全局指令
      resolvers: [
        ElementPlusResolver(),
        IconsResolver({
          prefix: "Icon",
        }),
      ],
    }),
    Components({
      dirs: ["src/components"], // 指定需要自动导入的组件所在的目录列表
      dts: "src/types/components.d.ts", // 是否生成类型声明文件 true会生成`.d.ts`的文件,也可以使用字符串地址来指定文件的位置
      resolvers: [
        ElementPlusResolver(),
        IconsResolver({
          enabledCollections: ["ep"],
        }),
      ], // 指定
    }),
    Icons({
      autoInstall: true,
    }),
    //  这个和题目无关
    Inspect(),
  ],
   // 这个和题目无关
  server: {
    host: "0.0.0.0",
  },
 // 这个和题目无关
  resolve: {
    alias: {
      "@": path.resolve(__dirname, "./src"),
      "@back": path.resolve(__dirname, "./src/views/back-stage"),
    },
  },
});
使用
// 之前的
//<el-icon><location /></el-icon> 
//<el-icon><DocumentDelete /></el-icon>

//现在的
<el-icon><i-ep-location /></el-icon>
<el-icon><i-ep-DocumentDelete /></el-icon>
// 这样拆开写也是可以的
<el-icon><i-ep-document-delete /></el-icon>
相关推荐
_.Switch43 分钟前
Python Web 应用中的 API 网关集成与优化
开发语言·前端·后端·python·架构·log4j
一路向前的月光1 小时前
Vue2中的监听和计算属性的区别
前端·javascript·vue.js
长路 ㅤ   1 小时前
vite学习教程06、vite.config.js配置
前端·vite配置·端口设置·本地开发
长路 ㅤ   1 小时前
vue-live2d看板娘集成方案设计使用教程
前端·javascript·vue.js·live2d
Fan_web1 小时前
jQuery——事件委托
开发语言·前端·javascript·css·jquery
安冬的码畜日常1 小时前
【CSS in Depth 2 精译_044】第七章 响应式设计概述
前端·css·css3·html5·响应式设计·响应式
莹雨潇潇2 小时前
Docker 快速入门(Ubuntu版)
java·前端·docker·容器
Jiaberrr2 小时前
Element UI教程:如何将Radio单选框的圆框改为方框
前端·javascript·vue.js·ui·elementui
Tiffany_Ho3 小时前
【TypeScript】知识点梳理(三)
前端·typescript
安冬的码畜日常4 小时前
【D3.js in Action 3 精译_029】3.5 给 D3 条形图加注图表标签(上)
开发语言·前端·javascript·信息可视化·数据可视化·d3.js