vue.js系列中的vue-fontawesome使用
折騰前言
目前工作主要使用 vue.js 框架進(jìn)行開(kāi)發(fā),自己又對(duì) vue 不是那么了解,還是半桶的狀態(tài),所以得加緊步伐趕緊熟悉起來(lái),這兩天在使用腳手架 vue-cli
創(chuàng)建項(xiàng)目玩耍中,又一直對(duì)font-awesome
鍥而不舍,通過(guò) github 了解到早有大牛搞出了 vue-awesome,因此就開(kāi)始折騰了……
廢話不多說(shuō),開(kāi)搞!
準(zhǔn)備工作
這個(gè)是作者的 github 地址:飛機(jī)
為了演示完整步驟,用腳手架新建個(gè)項(xiàng)目
正在創(chuàng)建中…
趁此閑話幾句
這種方式使用有個(gè)好處就是,你可以自己自定義任何圖標(biāo),即用 svg 格式輸出,然后通過(guò) Icon.register
去注冊(cè)一個(gè)圖標(biāo),注冊(cè)方式如下:
如果圖標(biāo)很多的時(shí)候,DOM 中可能分散著大量的 svg 標(biāo)簽,這個(gè)不知道算不算缺點(diǎn)來(lái)著。
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 這個(gè)是該圖標(biāo)的名字,在使用的時(shí)候通過(guò)
<icon name="chevron-right"></icon>
去使用,至于樣式按照正常定義即可。
paths 里面就是圖標(biāo)的繪制 svg 時(shí)候的路徑信息
安裝OK了,進(jìn)入正題……
準(zhǔn)備工作:
- 安裝 vue-awesome
$ npm install vue-awesome --save
這個(gè)簡(jiǎn)單安裝完成就OK。
結(jié)果預(yù)覽
從圖中看其實(shí)圖標(biāo)最后就是個(gè) svg 標(biāo)簽
圖標(biāo)存放目錄
為了開(kāi)發(fā)方便,新建 src/icons 目錄集中存放圖標(biāo)js文件
$ cd src/ $ mkdir icons && cmod
這里 cmod 是 777 權(quán)限,由于是用的是虛擬機(jī),所以經(jīng)常出現(xiàn)權(quán)限問(wèn)題,因此索性直接給 777(僅限本地開(kāi)發(fā))
icon 組件
下載 Icon.vue 文件
到這里下載 Icon.vue 文件,建議將整個(gè)項(xiàng)目 git 下來(lái)。
這個(gè)組件的作用就是,用來(lái)創(chuàng)建 <icon name="your icon name"></icon>
自定義標(biāo)簽。
然后把 Icon.vue 放到 components 目錄下(放哪里可以自己決定)
在 src/icons 創(chuàng)建注冊(cè)圖標(biāo)文件
這個(gè)目錄集中放置所有 icon 的注冊(cè) js 文件
創(chuàng)建出口文件 index.js 這里面將引入所有圖標(biāo) js 文件
// src/icons/index.js import './chevron-right.js'; // ...... 其他需要的圖標(biāo)文件
以右鍵頭圖標(biāo)為例:(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' }] } });
項(xiàng)目入口 main.js 引用字體庫(kù)
項(xiàng)目主入口文件 main.js 中引入 vue-awesome
庫(kù)和 icons/index.js
文件
引入圖標(biāo)組件
import Icon from './components/Icon';
引入圖標(biāo)內(nèi)容文件
import './icons/index.js';
然后將 Icon 注冊(cè)成 vue 組件
Vue.component('icon', Icon);
注冊(cè)完成之后,我們就可以在代碼中直接使用 <icon></icon>
標(biāo)簽了
結(jié)束
使用步驟還是很簡(jiǎn)單的,經(jīng)過(guò)上面的步驟之后我們就可以正常使用圖標(biāo)庫(kù)了
總結(jié)下來(lái)步驟其實(shí)就下面幾步
- import Icon.vue 組件
- new you-icon.js,里面通過(guò) Icon.register 注冊(cè)圖標(biāo)
- 【可選】 新建圖標(biāo)文件出口文件,這個(gè)在使用的圖標(biāo)很多的時(shí)候比 較方便
- <icon name="you icon name"></icon> 引用圖標(biāo)
- 給圖標(biāo)設(shè)置樣式(大小可以通過(guò) transform: scale() 來(lái)設(shè)置)
PS: 直接設(shè)置字體,改變不了大??;
總結(jié)
以上所述是小編給大家介紹的vue.js系列中的vue-fontawesome使用,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
vue3中使用@vueuse/core中的圖片懶加載案例詳解
這篇文章主要介紹了vue3中使用@vueuse/core中的圖片懶加載案例,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2023-03-03Vue路由監(jiān)聽(tīng)實(shí)現(xiàn)同頁(yè)面動(dòng)態(tài)加載的示例
本文主要介紹了Vue基于路由監(jiān)聽(tīng)實(shí)現(xiàn)同頁(yè)面動(dòng)態(tài)加載的示例,重點(diǎn)在于切換路由的時(shí)候,重新拉取列表數(shù)據(jù),接下來(lái)看看實(shí)現(xiàn)方法吧2021-05-05vue3+elementPlus?table中添加輸入框并提交校驗(yàn)
這篇文章主要介紹了vue3+elementPlus?table里添加輸入框并提交校驗(yàn),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-08-08vue3安裝vant實(shí)現(xiàn)按需引入和全局引入
本文主要介紹了vue3安裝vant實(shí)現(xiàn)按需引入和全局引入,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-04-04vuex中store存儲(chǔ)store.commit和store.dispatch的用法
這篇文章主要介紹了vuex中store存儲(chǔ)store.commit和store.dispatch的用法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-07-07vue/react項(xiàng)目刷新頁(yè)面出現(xiàn)404報(bào)錯(cuò)的原因及解決辦法
Vue項(xiàng)目打包部署到線上后,刷新頁(yè)面會(huì)提示404,下面這篇文章主要給大家介紹了關(guān)于vue/react項(xiàng)目刷新頁(yè)面出現(xiàn)404報(bào)錯(cuò)的原因及解決辦法,文中將解決的辦法介紹的很詳細(xì),需要的朋友可以參考下2023-05-05一文搞懂Vue3中toRef和toRefs函數(shù)的使用
這篇文章主要為大家介紹了Vue3中toRef和toRefs函數(shù)的使用方法,文中通過(guò)示例為大家進(jìn)行了詳細(xì)的講解,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2022-07-07Nuxt.js的路由跳轉(zhuǎn)操作(頁(yè)面跳轉(zhuǎn)nuxt-link)
這篇文章主要介紹了Nuxt.js的路由跳轉(zhuǎn)操作(頁(yè)面跳轉(zhuǎn)nuxt-link),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-11-11