vue 项目中使用阿里巴巴矢量图标库

官网

一、手动创建自己的项目图标库

选中图标 → 添加入库(点击购物车)→ 完成后点击上方菜单栏的购物车
→ 添加至项目(没有则新建项目)→ 自动打开项目图标库 → 点击下载至本地
→ 点击demo包的demo_index.html,上面有三种使用方式,分别是Unicode、Font class、Symbol(这个本地demo包很关键需保留,使用时打开demo_index.html)

注意:用编辑器直接打开demo_index.html可以看到,三种图标的介绍和使用demo

二、在vue项目中使用

1. Unicode 的方式使用图标

  1. 将本地demo包中的
    iconfont.css
    iconfont.ttf
    iconfont.woff
    iconfont.woff2
    拷贝到 /src/assets/icon-font 文件夹下
  2. 在main.js中引入 iconfont.css
import './assets/icon-font/iconfont.css'
  1. 在组件中使用
    容器:<span class="icon iconfont"></span>
    编码: & #xe600; (直接拷贝demo中,Unicode下的对应图标下的图标码即可)
    index.png
<span class="icon iconfont">&#xe600;</span>

此类图标相当于字体,常添加新class,通过 font-size控制图标大小,可以设置color等

<template>
  <div>
     <span class="icon iconfont kaishi">&#xe600;</span>
  </div>
</template>
<style lang="less">
.kaishi {
  font-size: 32px;
  color: pink;
}
</style>

2. Font class 的方式使用图标

  1. 将本地demo包中的
    iconfont.css
    iconfont.ttf
    iconfont.woff
    iconfont.woff2
    拷贝到 /src/assets/icon-font 文件夹下
  2. 在main.js中引入 iconfont.css
import './assets/icon-font/iconfont.css'
  1. 在组件中使用
    容器:<i class="iconfont"></i>
    类名: icon-kaishi (直接拷贝demo中,Font class下的对应图标下的类名即可)
<i class="iconfont icon-kaishi"></i>

此类图标相当于字体,常使用最后一个class,通过 font-size控制图标大小,可以设置color等
使用时在 font-class名称前加上 icon- 前缀

<template>
  <div>
     <i class="iconfont icon-kaishi"></i>
  </div>
</template>
<style lang="less">
.icon-kaishi {
  font-size: 32px;
  color: pink;
}
</style>

3. Symbol 的方式渲染图标

  1. 将本地demo包中的
    iconfont.js
    拷贝到 /src/assets/icon-font 文件夹下
  2. 在main.js中引入 iconfont.js
import './assets/icon-font/iconfont.js'
  1. 在组件中使用
    容器:<svg class="icon svg-icon" aria-hidden="true"><use xlink:href=""></use></svg>
    类名: #icon-kaishi (直接拷贝demo中,Font class下的对应图标下的类名即可)
<svg class="icon svg-icon" aria-hidden="true">
     <use xlink:href="#icon-kaishi"></use>
</svg>

此类图标相当于图片,添加一个class,通过 width和height控制图标大小,可以通过fill设置图标颜色等

<template>
  <div>
     <svg class="icon svg-icon svgkaishi" aria-hidden="true">
        <use xlink:href="#icon-kaishi"></use>
      </svg>
  </div>
</template>
<style lang="less">
.svgkaishi {
  width: 32px;
  height: 32px;
  fill: pink;
}
</style>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容