vue使用Font Awesome的方法步骤


Posted in Javascript onFebruary 26, 2019

折腾前言

目前工作主要使用 vue.js 框架进行开发,自己又对 vue 不是那么了解,还是半桶的状态,所以得加紧步伐赶紧熟悉起来,这两天在使用脚手架 vue-cli 创建项目玩耍中,又一直对font-awesome锲而不舍,通过 github 了解到早有大牛搞出了 vue-awesome,因此就开始折腾了……

废话不多说,开搞!

准备工作

这个是作者的 github 地址:飞机

为了演示完整步骤,用脚手架新建个项目

正在创建中…

趁此闲话几句

这种方式使用有个好处就是,你可以自己自定义任何图标,即用 svg 格式输出,然后通过 Icon.register 去注册一个图标,注册方式如下:

如果图标很多的时候,DOM 中可能分散着大量的 svg 标签,这个不知道算不算缺点来着。

Icon.register({
  'chevron-right': {
    'width': 1280,
    'height': 1792,
    'paths': [{
      'd': 'M1107 877l-742 742q-19 19-45 19t-45-19l-166-166q-19-19-19-45t19-45l531-531-531-531q-19-19-19-45t19-45l166-166q19-19 45-19t45 19l742 742q19 19 19 45t-19 45z'
    }]
  }
});

chevron-right 这个是该图标的名字,在使用的时候通过

<icon name="chevron-right"></icon> 去使用,至于样式按照正常定义即可。

paths 里面就是图标的绘制 svg 时候的路径信息

安装OK了,进入正题……

准备工作:

安装 vue-awesome

$ npm install vue-awesome --save

这个简单安装完成就OK。

结果预览

从图中看其实图标最后就是个 svg 标签

vue使用Font Awesome的方法步骤

图标存放目录

为了开发方便,新建 src/icons 目录集中存放图标js文件

$ cd src/

$ mkdir icons && cmod

这里 cmod 是 777 权限,由于是用的是虚拟机,所以经常出现权限问题,因此索性直接给 777(仅限本地开发)

icon 组件

下载 Icon.vue 文件

到这里下载 Icon.vue 文件,建议将整个项目 git 下来。

这个组件的作用就是,用来创建 <icon name="your icon name"></icon> 自定义标签。

然后把 Icon.vue 放到 components 目录下(放哪里可以自己决定)

src/icons 创建注册图标文件

这个目录集中放置所有 icon 的注册 js 文件

创建出口文件 index.js 这里面将引入所有图标 js 文件

// src/icons/index.js

import './chevron-right.js';

// ...... 其他需要的图标文件

以右键头图标为例:(chevron-right.js)

import Icon from '../components/Icon.vue';

Icon.register({
  'chevron-right': {
    'width': 1280,
    'height': 1792,
    'paths': [{
      'd': 'M1107 877l-742 742q-19 19-45 19t-45-19l-166-166q-19-19-19-45t19-45l531-531-531-531q-19-19-19-45t19-45l166-166q19-19 45-19t45 19l742 742q19 19 19 45t-19 45z'
    }]
  }
});

项目入口 main.js 引用字体库

项目主入口文件 main.js 中引入 vue-awesome 库和 icons/index.js 文件

引入图标组件

import Icon from './components/Icon';

引入图标内容文件

import './icons/index.js';

然后将 Icon 注册成 vue 组件

Vue.component('icon', Icon);

注册完成之后,我们就可以在代码中直接使用 <icon></icon> 标签了

结束

使用步骤还是很简单的,经过上面的步骤之后我们就可以正常使用图标库了

总结下来步骤其实就下面几步

  1. import Icon.vue 组件
  2. new you-icon.js,里面通过 Icon.register 注册图标
  3. 【可选】 新建图标文件出口文件,这个在使用的图标很多的时候比较方便
  4. <icon name="you icon name"></icon> 引用图标
  5. 给图标设置样式(大小可以通过 transform: scale() 来设置)

PS: 直接设置字体,改变不了大小;

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js实现权限树的更新权限时的全选全消功能
Feb 17 Javascript
javascript两种function的定义介绍及区别说明
May 02 Javascript
JS拖拽插件实现步骤
Aug 03 Javascript
JS组件Bootstrap导航条使用方法详解
Apr 29 Javascript
js自定义select下拉框美化特效
May 12 Javascript
基于JS实现bookstore静态页面的实例代码
Feb 22 Javascript
JS/HTML5游戏常用算法之路径搜索算法 A*寻路算法完整实例
Dec 14 Javascript
浅谈vue后台管理系统权限控制思考与实践
Dec 19 Javascript
JavaScript this在函数中的指向及实例详解
Oct 14 Javascript
js实现点赞按钮功能的实例代码
Mar 06 Javascript
详解ES6新增字符串扩张方法includes()、startsWith()、endsWith()
May 12 Javascript
Element PageHeader页头的使用方法
Jul 26 Javascript
JS实现的杨辉三角【帕斯卡三角形】算法示例
Feb 26 #Javascript
create-react-app使用antd按需加载的样式无效问题的解决
Feb 26 #Javascript
JS实现电话号码的字母组合算法示例
Feb 26 #Javascript
JS实现的合并两个有序链表算法示例
Feb 25 #Javascript
JS实现判断有效的数独算法示例
Feb 25 #Javascript
js实现通过开始结束控制的计时器
Feb 25 #Javascript
js实现倒计时器自定义时间和暂停
Feb 25 #Javascript
You might like
php守护进程 加linux命令nohup实现任务每秒执行一次
2011/07/04 PHP
PHP生成Gif图片验证码
2013/10/27 PHP
php删除指定目录的方法
2015/04/03 PHP
PHP性能分析工具XHProf安装使用教程
2015/05/13 PHP
PHP可变变量学习小结
2015/11/29 PHP
PHP 返回数组后处理方法(开户成功后弹窗提示)
2017/07/03 PHP
PHP项目多语言配置平台实现过程解析
2020/05/18 PHP
[原创]提供复制本站内容时出现,该文章转自脚本之家等字样的js代码
2007/03/27 Javascript
超级退弹代码
2008/07/07 Javascript
修改jQuery Validation里默认的验证方法
2012/02/14 Javascript
利用JQuery和JS实现奇偶行背景颜色自定义效果
2012/11/19 Javascript
JavaScript字符串String和Array操作的有趣方法
2012/12/18 Javascript
原生javascript实现图片弹窗交互效果
2015/01/12 Javascript
jQuery实现不断闪烁文字的方法
2015/05/15 Javascript
纯JS打造网页中checkbox和radio的美化效果
2016/10/13 Javascript
jquery实现全选、全不选以及单选功能
2017/03/23 jQuery
js案例之鼠标跟随jquery版(实例讲解)
2017/07/21 jQuery
关于TypeScript中import JSON的正确姿势详解
2017/07/25 Javascript
使用live-server快速搭建本地服务器+自动刷新的方法
2018/03/09 Javascript
解决vue路由后界面没有变化,但是链接有的问题
2018/09/01 Javascript
详解如何创建并发布一个 vue 组件
2018/11/08 Javascript
在element-ui的select下拉框加上滚动加载
2019/04/18 Javascript
零基础写python爬虫之使用Scrapy框架编写爬虫
2014/11/07 Python
Python中对列表排序实例
2015/01/04 Python
Python的Django中将文件上传至七牛云存储的代码分享
2016/06/03 Python
举例讲解Python中metaclass元类的创建与使用
2016/06/30 Python
基于python 爬虫爬到含空格的url的处理方法
2018/05/11 Python
Python GUI库PyQt5图形和特效样式QSS介绍
2020/02/25 Python
解决Django提交表单报错:CSRF token missing or incorrect的问题
2020/03/13 Python
Python如何输出整数
2020/06/07 Python
彪马土耳其官网:PUMA土耳其
2019/07/14 全球购物
财政局长自荐信范文
2013/12/22 职场文书
应届生求职信
2014/05/31 职场文书
上课说话检讨书500字
2014/11/01 职场文书
使用Redis实现实时排行榜功能
2021/07/02 Redis
使用opencv-python如何打开USB或者笔记本前置摄像头
2022/06/21 Python