图标支持

Gungnir
2020-03-30
3 min

主题内置了 Vue 图标组件 oh-vue-icons(我写的 hhh)作为图标支持。oh-vue-icons 集成了多个常用图标库,能让你轻松从不同的图标库引入 SVG 图标。

这里查看 oh-vue-icons 的文档和更多信息。

# 引入图标

oh-vue-icons 支持 tree-shaking,没有引入的图标不会出现在打包文件中。因此你可以只引入你想要使用的图标,从而减小打包体积。

主题默认引入了以下图标:

  • FaRegularUser
  • FaRegularCalendar
  • RiTimerLine
  • FaSun
  • FaMoon
  • FaMagic
  • FaChevronLeft
  • FaChevronRight
  • FaChevronUp
  • FaChevronDown
  • FaListUl
  • BiLayoutSidebarInset
  • FaPencilAlt
  • FaCircle
  • FaRss
  • FaGithubAlt
  • FaLinkedinIn
  • FaFacebookF
  • FaTwitter
  • RiZhihuLine
  • FaWeibo

如果想要引入别的图标,需要在 oh-vue-icons网站上搜索图标的名称,然后在你的项目的 .vuepress/enhanceApp.js 文件(如果没有的话就新建一个)中全局引入图标:

// 引入 OhVueIcon 组件
import OhVueIcon from "oh-vue-icons";

// 引入想要使用的图标
import { OiGitCompare, RiBook2Fill } from "oh-vue-icons/icons";
OhVueIcon.add(OiGitCompare, RiBook2Fill);

当然你也可以在你的自定义组件中局部引入。

# 使用图标

然后你就可以在 Markdown 或自定义组件中使用引入的图标了:

<v-icon name="oi-git-compare" />
<v-icon name="ri-book-2-fill" />

oh-vue-icons 还支持定制图标的颜色、大小、翻转、动画等,这是一些例子:

<v-icon name="oi-git-compare" scale="2" />
<v-icon name="oi-git-compare" flip="vertical" />
<v-icon name="oi-git-compare" fill="orange" />
<v-icon name="oi-git-compare" animation="flash" />

更多的功能和示例请参考 oh-vue-icons文档