vue3自动导入icon图标具体实现方法

 更新时间:2026年01月16日 10:52:05   作者:little__baii  
在Vue中,icon通常指的是图标,用于在用户界面中展示图形符号,这篇文章主要介绍了vue3自动导入icon图标具体实现方法,文中通过代码介绍的非常详细,需要的朋友可以参考下

如何在Element Plus中正确使用El-Icons的自动导入功能

虽然Element Plus的El-Icons支持自动导入,但在实际引用时可能缺乏明确的示例。以下提供具体实现方法,确保图标能够正确加载并显示。

安装依赖

确保项目中已安装@element-plus/icons-vue及自动导入,通过以下命令安装:

npm install @element-plus/icons-vue
npm install -D unplugin-vue-components unplugin-auto-import
npm install unplugin-icons

配置自动导入

以Vite为例,在vite.config.js中添加以下内容:

export default defineConfig({
  plugins: [
    AutoImport({
      resolvers: [ElementPlusResolver()],
      // 自动导入图标组件(这里可以不用配置)
      // IconsResolver({
      //   prefix: 'Icon',
      // }),
    }),
    Components({
      resolvers: [ElementPlusResolver()],
      IconsResolver(
        // 这里不配置也可以自动导入图标
        // {
        //   prefix: 'i',  默认是 'i'
        //   enabledCollections: ['ep'],
        // }
        ),
    }),
  ],
});

贴一下源码

import path from 'path'
import { defineConfig } from 'vite'
import Vue from '@vitejs/plugin-vue'
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'
import vueDevTools from 'vite-plugin-vue-devtools'
const pathSrc = path.resolve(__dirname, 'src')

export default defineConfig({
  resolve: {
    alias: {
      '@': pathSrc,
    },
  },
  plugins: [
    Vue(),
    vueDevTools(),
    AutoImport({
      // 自动导入 Vue 相关函数,如:ref, reactive, toRef 等
      imports: ['vue'],

      // 自动导入 Element Plus 相关函数,如:ElMessage, ElMessageBox... (带样式)
      resolvers: [
        ElementPlusResolver(),

        // Auto import icon components
        // 自动导入图标组件(这里可以不用配置)
        // IconsResolver({
        //   prefix: 'Icon',
        // }),
      ],

      dts: path.resolve(pathSrc, 'auto-imports.d.ts'),
    }),

    Components({
      resolvers: [
        // Auto register icon components
        // 自动注册图标组件
        IconsResolver(
        // 这里不配置也可以自动导入图标
        //   {
        //   prefix: 'i',  默认是 'i'
        //   enabledCollections: ['ep'],
        // }
        ),
        // Auto register Element Plus components
        // 自动导入 Element Plus 组件
        ElementPlusResolver(),
      ],

      dts: path.resolve(pathSrc, 'components.d.ts'),
    }),

    Icons({
      autoInstall: true,
    }),

    Inspect(),
  ],
})

示例

tips: 自动导入icon图标的icon, 需要以{prefix}-{collection}-{icon}格式来使用。

默认前缀是i 可以在Components中的IconsResolver修改  element-plus 名称则是ep

<el-icon><i-ep-lock /></el-icon>

总结 

到此这篇关于vue3自动导入icon图标具体实现方法的文章就介绍到这了,更多相关vue3自动导入icon图标内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Vue中$emit调用父组件异步方法模拟.then实现方式

    Vue中$emit调用父组件异步方法模拟.then实现方式

    这篇文章主要介绍了Vue中$emit调用父组件异步方法模拟.then实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-09-09
  • vuex直接修改state、commit和dispatch修改state的用法及区别说明

    vuex直接修改state、commit和dispatch修改state的用法及区别说明

    这篇文章主要介绍了vuex直接修改state、commit和dispatch修改state的用法及区别说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-08-08
  • vue缓存之keep-alive的理解和应用详解

    vue缓存之keep-alive的理解和应用详解

    这篇文章主要介绍了vue缓存之keep-alive的理解和应用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • vue实现app页面切换动画效果实例

    vue实现app页面切换动画效果实例

    本篇文章主要介绍了vue实现app页面切换动画效果实例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-05-05
  • Vue-cli集成axios请求出现CORS跨域问题及解决

    Vue-cli集成axios请求出现CORS跨域问题及解决

    这篇文章主要介绍了Vue-cli集成axios请求出现CORS跨域问题及解决方案,具有很好的参考价值,希望对大家有所帮助,
    2023-10-10
  • vuex中能直接修改state吗

    vuex中能直接修改state吗

    当我们使用vuex的时候,时不时能看到“更改Vuex中的store中的状态唯一办法就是提交mutations”,但是有没有试想过,我们不提交mutations其实也能修改state的值?答案是可以的,下面通过本文介绍下vuex修改state值的方法,感兴趣的朋友一起看看吧
    2022-11-11
  • Vue密码登陆加密RSA实现方案

    Vue密码登陆加密RSA实现方案

    这篇文章主要介绍了Vue密码登陆加密RSA实现方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-07-07
  • Vue实现boradcast和dispatch的示例

    Vue实现boradcast和dispatch的示例

    这篇文章主要介绍了Vue实现boradcast和dispatch的示例,帮助大家更好的理解和使用vue,感兴趣的朋友可以了解下
    2020-11-11
  • 拿来就用vue-gird-layout组件封装示例

    拿来就用vue-gird-layout组件封装示例

    这篇文章主要介绍了vue-gird-layout组件封装示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-08-08
  • Vue监听键盘事件实用示例

    Vue监听键盘事件实用示例

    我们在开发过程中经常需要监听用户的输入,比如用户的点击事件、拖拽事件、键盘事件等等,这篇文章主要给大家介绍了关于Vue监听键盘事件实用示例的相关资料,需要的朋友可以参考下
    2023-11-11

最新评论