Vue3按需导入Icon图标——VueCli

开始的时候都是先准备安装环境:

1、安装icon组件

npm install @element-plus/icons-vue

2、安装自动导入图片插件

npm install -D unplugin-icons unplugin-auto-import

修改vue.config.js配置文件

在vue.config.js配置文件中添加如下内容,其中2-3行事element-plus的组件自动引入工具,8-10行才是Icon的图标引入
prefix是取别名这里不加别名默认就是"i",enabledCollections是可以使用的集合。

const { defineConfig } = require('@vue/cli-service')
const AutoImport = require('unplugin-auto-import/webpack')
const Components = require('unplugin-vue-components/webpack')
const { ElementPlusResolver } = require('unplugin-vue-components/resolvers')


// 引入 Icon自动引入解析器
const IconsResolver = require('unplugin-icons/resolver')
const Icons = require('unplugin-icons/webpack')
const { FileSystemIconLoader } = require('unplugin-icons/loaders')
module.exports = defineConfig({
  transpileDependencies: true,
  lintOnSave: false,
  configureWebpack: {
    plugins: [
      AutoImport({
        resolvers: [ElementPlusResolver(),
        // 自动导入图标组件
        IconsResolver({
          //prefix: 'icon',
        }),]
      }),
      // 使用自动引入插件
      Components({
        // 使用自动引入插件
        resolvers: [
           // 使用 ElementPlus 自动引入解析器
          ElementPlusResolver(),
          // Icon自动引入解析器
          IconsResolver({
            // 自动引入的Icon组件统一前缀,默认为 i,设置false为不需要前缀
                  //prefix: 'icon',
                  enabledCollections: ['ep'],
                  // 当图标集名字过长时,可使用集合别名
                  alias: {
                    system: 'system-uicons'
                  }
          })
        ]
      }),
      Icons({ 
        compiler: 'vue3',
        autoInstall: true
      }),
    ]
  }
})

使用集合图标

打开网址https://icon-sets.iconify.design/ep/这是iconify官网关于element-plus所有的图标,选择其中一个这里以user为例,":"前面的就是集合名称,后面是图标名称,所以在项目中图标的正确写法应该是

<el-icon><iEpUser/></el-icon>或者<el-icon><i-ep-user/></el-icon>

在这里插入图片描述

icon的自动引入就完成了不需要写import语句

注意:按需引入后input框中带有icon图标的写法就不再是官网教程中写的那样了,而是使用具名插槽插入图标,例如:

<el-input
      v-model="userInfo.username"
      placeholder="请输入账号"
      size="large"
      class="w-300 mar-b-20"
      clearable>
      <template #prefix> <i-ep-user /> </template>
</el-input>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值