vue3+svg图标的使用

该教程介绍了如何从阿里图标库下载SVG图标,并在Vite项目中使用它们。首先,需要下载SVG图标并安装相关插件。然后,创建SVG组件,并在main.js中注册。在vite.config.js中配置图标插件,并在模板中通过组件调用图标。
摘要由CSDN通过智能技术生成

阿里svg图标奶妈级教学

一、下载图标地址,找到需要的图标下载svg即可使用具体下载方法不再教学

https://www.iconfont.cn/help/detail?spm=a313x.7781069.1998910419.20&helptype=code

二、安装插件

分别需要两个插件fast-glob -D ,vite-plugin-svg-icons -D npm和cnpm都一样,个人感觉cnpm安装快一些

cnpm i fast-glob -D 
cnpm i vite-plugin-svg-icons -D

三、新建一个存放svg图标的文件夹,任何地方都可以,看个人习惯

四、新增组件

组件内容

<template>
    <svg aria-hidden="true" class="svg-icon" :width="props.size" :height="props.size">
      <use :xlink:href="symbolId" rel="external nofollow"  :fill="props.color" />
    </svg>
  </template>
  
  <script setup>
  import { computed } from 'vue'
  const props = defineProps({
    prefix: {
      type: String,
      default: 'icon'
    },
    name: {
      type: String,
      required: true
    },
    color: {
      type: String,
      default: '#333'
    },
    size: {
      type: String,
      default: '1em'
    }
  })
  const symbolId = computed(() => `#${props.prefix}-${props.name}`)
  </script>

五、src下的main.js注册组件和引入,app什么 就不说了

import svgIcon from "./components/SvgIcon/index.vue";
import 'virtual:svg-icons-register'
app.component('svg-icon', svgIcon)

六、vite.config.js,具体添加的位置都标注好了

import { createSvgIconsPlugin } from 'vite-plugin-svg-icons'
import path from 'path'

   createSvgIconsPlugin({
      // 指定需要缓存的图标文件夹
      iconDirs: [path.resolve(process.cwd(), './src/assets/iconSvg')],
      // 指定symbolId格式
      symbolId: 'icon-[dir]-[name]',

      /**
       * 自定义插入位置
       * @default: body-last
       */
      // inject?: 'body-last' | 'body-first'

      /**
       * custom dom id
       * @default: __svg__icons__dom__
       */
      // customDomId: '__svg__icons__dom__',
    }),

七、使用svg

    <svg-icon name="绘图保存"></svg-icon>
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值