首页
Preview

用nuxt3官方提供的nuxt-icon插件来引入iconify的海量图标

旧的引用方式

这里我们不用ant蚂蚁框架的图标,我们从iconify从导入图标。

iconify图标是一种矢量图标格式,它可以以小尺寸的形式显示在各种设备上,如移动设备、桌面应用程序和网页。iconify图标可以缩放到任何尺寸而不失真,并且可以通过CSS或JavaScript进行动态更改。Iconify图标还支持多种颜色和主题,使其适合各种不同的设计需求。

可以通过这个网站查看所有图标集,https://icones.js.org/collection/ep

查看文档:https://docs.iconify.design/api/css.html

可以使用 unplugin-icons@iconify/jsoniconify 中自动导入任何图标集。 不仅能够按需加载图标,更能使用成千上万的任意图标。更能满足我们开发的需求。

安装

yarn add unplugin-icons  @iconify/json

配置

nuxt.config.ts里配置,配置图标前缀和你想使用的图标库

//...
import Icons from 'unplugin-icons/vite'
import  IconsResolver  from "unplugin-icons/resolver"

export default defineNuxtConfig({
    css: [
        '~/assets/css/global.scss'
    ],
    //...
    vite: {
        plugins: [
            // 按需引入组件
            Components({
                resolvers: [
                    AntDesignVueResolver({
                        importStyle: 'less' //配置为less
                    }),
                    // 配置图标前缀
                    IconsResolver({
                        prefix:'i',
                        enabledCollections: ['ep','ant-design','mdi-light']
                    })
                ]
            }),
            // 自动
            Icons({
                autoInstall: true,//在 Vue.js的安装过程中自动安装该插件。
                compiler: "vue3" //表示该插件使用的是 Vue3.x 版本的编译器。
            })
        ],
        css:{
          preprocessorOptions: {
              less: {
                  modifyVars: {
                      'primary-color': '#ea6f5a'
                  },
                  javascriptEnabled: true,
              }
          }
        },

        // ssr
        ssr: {
            noExternal: ['ant-design-vue'],
        }
    }
})

使用

<div>
      使用ele的menu图标
      <i-ep-menu/>
      使用antd的menu图标
      <i-ant-design-menu/>
      <i-mdi-light-account/>
    </div>

新的引用方式

现在推荐nuxt官方提供的nuxt-icon插件来引入iconify的海量图标。

用法

  • 安装

nuxt-icon依赖项添加到您的项目中:

npm install --save-dev nuxt-icon

# Using yarn
yarn add --dev nuxt-icon
  • 将其添加到nuxt.config.ts文件中:
import { defineNuxtConfig } from 'nuxt'

export default defineNuxtConfig({
  modules: ['nuxt-icon']
})
  • 使用

<Icon />组件中使用,当使用 Iconify 中的图标时,只需要填入图标的名字即可。

<Icon name="uil:github" color="black" />

版权声明:本文内容由TeHub注册用户自发贡献,版权归原作者所有,TeHub社区不拥有其著作权,亦不承担相应法律责任。 如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

点赞(0)
收藏(0)
Hedy
大家好!我是一位前端开发工程师,拥有6年以上的前端开发经验。我熟练掌握HTML、CSS、JavaScript等语言,能够灵活运用各种前端框架,如Vue、React、Uniapp、Flutter等。我注重理论与实践相结合,能够为学员提供丰富的案例和实践项目,并以生动、易懂的语言为学员讲解前端开发的核心知识和技能。我不仅注重传授技能,更关注学员的职业发展,希望通过我的教学,帮助学员成为一名优秀的前端开发工程师。

评论(0)

添加评论