vue-cli通过symbol引用阿里iconfont图标

官方文档中已经说明symbol引用方式有以下特点:

  • 支持多色图标了,不再受单色限制。
  • 通过一些技巧,支持像字体那样,通过font-size,color来调整样式
  • 兼容性较差,支持 ie9+,及现代浏览器
  • 浏览器渲染svg的性能一般,还不如png

symbol的本地引用可以防止出现网络不稳定图标加载不出来等问题,在线引用更方便图标的更新


方法一 本地引用:

  1. 在iconfont下载图标包,解压后放到assets中。
    在这里插入图片描述
    在这里插入图片描述
  2. 创建css文件写入通用css代码
    在这里插入图片描述
  .icon {
       width: 1em; height: 1em;
       vertical-align: -0.15em;
       fill: currentColor;
       overflow: hidden;
    }
  1. 在main.js中引入1中的iconfont.js和2中的css文件

在这里插入图片描述

  1. 使用示例:
    Ⅰ、封装图标使用组件iconFont.vue 在需要使用图标的地方直接调用子组件,并传入iconClass(图标尺寸)、iconHref(图标地址)就可以了
<!-- iconFont.vue -->
<template>
  <div>
      <!-- 应用阿里icon组件  官方固定写法  不封装也可以在页面中直接使用-->
    <svg :style="{width:iconClass.width,height:iconClass.height}" aria-hidden="true">
      <use :xlink:href="'#'+iconHref" />
    </svg>
  </div>
</template>
<script>
export default {
    props:['iconClass','iconHref']
    //传入的iconClass写法  iconClass: { width: "20px", height: "20px", },
}
</script>

Ⅱ、父组件中引用组件
点击图标的‘复制代码’获取到iconHref:
点击图标的‘复制代码’获取到iconHref

<iconFont :iconClass="iconSize" :iconHref="'你的图标链接'"></iconFont>
import iconFont from './iconFont'
export default {
  data() {
    return {
      iconSize:{
        width:'20px',
        height:'20px'
      }
    };
  },
 }

方法二 在线引用:

  1. 在iconfont项目中复制symbol代码

在这里插入图片描述

  1. 在index.html中引用复制的代码
    在这里插入图片描述

  2. 创建css文件,写入通用css代码,在main.js中引用,创建vue组件。步骤如方法一2 3 4点,不再赘述。

附 :批量复制阿里云图标代码方法,点击[链接 ](https://blog.csdn.net/yuryS/article/details/119575863?spm=1001.2014.300


参考:https://www.iconfont.cn/help/detail?spm=a313x.7781069.1998910419.d8cf4382a&helptype=code

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值