在小程序框架 wepy 中使用 iconfont 圖標(biāo)字體

新的小程序項(xiàng)目準(zhǔn)備踩坑 Wepy 啦佩伤!

糾結(jié)過(guò)原生、Wepy晦毙、mpvue到底用哪個(gè)生巡。

  • 原生:之前的項(xiàng)目用的就是原生,開(kāi)發(fā)起來(lái)有點(diǎn)太原始结序,想換換口味障斋。把原生作為托底方案,假如另外兩個(gè)遇到踩不過(guò)去的坑就轉(zhuǎn)用原生做徐鹤。
  • wepy:star數(shù)量有16k垃环,看了看官方文檔,感覺(jué)開(kāi)發(fā)方式還不錯(cuò)返敬。畢竟算是騰訊親生兒子遂庄,感覺(jué)靠譜些。
  • mpvue:star數(shù)跟 wepy 不相上下劲赠,也是 16k涛目,一套代碼多端通用很有吸引力。

mpvue 跟 wepy 真的很難抉擇凛澎,我目前沒(méi)有兼容多平臺(tái)的需求霹肝,所以直覺(jué)告訴我還是用 wepy 吧~

100 多位經(jīng)驗(yàn)豐富的開(kāi)發(fā)者參與,在 Github 上獲得了近 1000 個(gè) star 的全棧全平臺(tái)開(kāi)源項(xiàng)目想了解或參與嗎塑煎?
項(xiàng)目地址:https://github.com/cachecats/coderiver

為什么用圖標(biāo)字體

一是輕量級(jí)沫换、靈活性,二是小程序的特殊性最铁。

目前小程序整體雖然可以達(dá)到 8M讯赏,但每個(gè)分包不能超過(guò)2M垮兑,圖標(biāo)都用圖片的話體積太大。

查找并下載圖標(biāo)

我們采用阿里的 iconfont漱挎。

打開(kāi) iconfont 系枪,搜索想要的圖標(biāo),然后鼠標(biāo)放到圖標(biāo)上點(diǎn)購(gòu)物車小按鈕加入購(gòu)物車磕谅,如下圖:

image

選完后找到購(gòu)物車私爷,點(diǎn)添加進(jìn)項(xiàng)目。沒(méi)有項(xiàng)目的話可以新建一個(gè)怜庸。

image

把圖標(biāo)放進(jìn)項(xiàng)目的目的是当犯,以后再想添加其他圖標(biāo),直接加入項(xiàng)目即可割疾,方便一鍵下載嚎卫。

打開(kāi)項(xiàng)目,可以看到剛選擇的圖標(biāo)都在里面宏榕。點(diǎn) 下載至本地拓诸,將這些圖標(biāo)字體打包下載到本地。

image

下載完是一個(gè) .zip 壓縮包麻昼,解壓得到一系列文件奠支。

image

除了前兩個(gè),其他的幾個(gè)文件都是以 iconfont 作為文件名抚芦,只是后綴不同倍谜。猜想這應(yīng)該是為了兼容不同的瀏覽器而形成的不同格式,打開(kāi) iconfont.css 瞅一眼叉抡,可以看到前面幾行是引入了下面幾個(gè)文件尔崔,還有注釋,分別是兼容 IE9 褥民、IE6-8 等各種版本的瀏覽器季春。

image

知道原理后,可以根據(jù)自己項(xiàng)目的情況選擇引入哪些文件消返。最保險(xiǎn)的是把以 iconfont 為文件名的幾個(gè)文件都拷過(guò)去载弄,肯定沒(méi)問(wèn)題。但小程序的內(nèi)核版本應(yīng)該比較高撵颊,在微信內(nèi)部打開(kāi)不用考慮兼容性問(wèn)題宇攻,所以我們只用引 iconfont.css 這一個(gè)文件即可。

將 iconfont 引入wepy項(xiàng)目

打開(kāi) wepy 項(xiàng)目倡勇,將 iconfont.css 拷到項(xiàng)目中逞刷。我習(xí)慣放到 src/assets/iconfont 下面。

image

拷進(jìn)來(lái)之后還要做一些更改。

由于我在項(xiàng)目中用了 SCSS亲桥,為了引入方便將文件名改為 iconfont.scss。雖然 SCSS 也能直接引入 CSS 文件固耘,但我試了如果用 .css 作為后綴則引不成功题篷,所以還是改成 .scss 吧。

然后改 iconfont.scss 里的代碼厅目,把代碼中引入其他文件的代碼都刪掉番枚,只保留有 base64 的那行:

url('data:application/x-font-woff2;charset=utf-8;base64...

然后還需要在 url 的前面加上 src:。改完后最終的代碼:

@font-face {font-family: "iconfont";
  src: url('data:application/x-font-woff2;charset=utf-8;base64,d09GMgABAA...==') format('woff2');
}

.iconfont {
  font-family: "iconfont" !important;
  font-size: 16px;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-like:before {
  content: "\e614";
}

.icon-add:before {
  content: "\e612";
}

上面 base64 中間刪掉了很多用 … 代替了损敷。

改完 iconfont.scss 葫笼,再在 app.wpy 中引入即可。

<style lang="scss">
  @import "./assets/iconfont/iconfont";

  .container {
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    box-sizing: border-box;
  }
</style>

現(xiàn)在就可以愉快的在 wepy 項(xiàng)目中使用圖標(biāo)字體啦拗馒!

演示

新建一個(gè)頁(yè)面路星,放一個(gè) text 和 一個(gè)圖標(biāo),編譯后用微信開(kāi)發(fā)工具打開(kāi)看效果

<template lang="wxml">
  <div>
    <text>哈哈</text>
    <i class='iconfont icon-add'></i>
  </div>
</template>
image

圖標(biāo)顯示成功诱桂。

以上就是在 wepy 中使用 iconfont 圖標(biāo)字體的全部?jī)?nèi)容洋丐。


全棧全平臺(tái)開(kāi)源項(xiàng)目 CodeRiver

CodeRiver 是一個(gè)免費(fèi)的項(xiàng)目協(xié)作平臺(tái),愿景是打通 IT 產(chǎn)業(yè)上下游挥等,無(wú)論你是產(chǎn)品經(jīng)理友绝、設(shè)計(jì)師、程序員或是測(cè)試肝劲,還是其他行業(yè)人員迁客,只要有好的創(chuàng)意、想法辞槐,都可以來(lái) CodeRiver 免費(fèi)發(fā)布項(xiàng)目掷漱,召集志同道合的隊(duì)友一起將夢(mèng)想變?yōu)楝F(xiàn)實(shí)!

CodeRiver 本身還是一個(gè)大型開(kāi)源項(xiàng)目催蝗,致力于打造全棧全平臺(tái)企業(yè)級(jí)精品開(kāi)源項(xiàng)目切威。涵蓋了 React、Vue丙号、Angular先朦、小程序、ReactNative犬缨、Android喳魏、Flutter、Java怀薛、Node 等幾乎所有主流技術(shù)棧刺彩,主打代碼質(zhì)量。

目前已經(jīng)有近 100 名優(yōu)秀開(kāi)發(fā)者參與,github 上的 star 數(shù)量將近 1000 個(gè)创倔。每個(gè)技術(shù)棧都有多位經(jīng)驗(yàn)豐富的大佬坐鎮(zhèn)嗡害,更有兩位架構(gòu)師指導(dǎo)項(xiàng)目架構(gòu)。無(wú)論你想學(xué)什么語(yǔ)言處于什么技術(shù)水平畦攘,相信都能在這里學(xué)有所獲霸妹。

通過(guò) 高質(zhì)量源碼 + 博客 + 視頻,幫助每一位開(kāi)發(fā)者快速成長(zhǎng)知押。

項(xiàng)目地址:https://github.com/cachecats/coderiver


您的鼓勵(lì)是我們前行最大的動(dòng)力叹螟,歡迎點(diǎn)贊,歡迎送小星星? ~

image
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末台盯,一起剝皮案震驚了整個(gè)濱河市罢绽,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌静盅,老刑警劉巖良价,帶你破解...
    沈念sama閱讀 211,639評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異蒿叠,居然都是意外死亡棚壁,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,277評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門栈虚,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)袖外,“玉大人,你說(shuō)我怎么就攤上這事魂务÷椋” “怎么了?”我有些...
    開(kāi)封第一講書人閱讀 157,221評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵粘姜,是天一觀的道長(zhǎng)鬓照。 經(jīng)常有香客問(wèn)我,道長(zhǎng)孤紧,這世上最難降的妖魔是什么豺裆? 我笑而不...
    開(kāi)封第一講書人閱讀 56,474評(píng)論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮号显,結(jié)果婚禮上臭猜,老公的妹妹穿的比我還像新娘。我一直安慰自己押蚤,他們只是感情好蔑歌,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,570評(píng)論 6 386
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著揽碘,像睡著了一般次屠。 火紅的嫁衣襯著肌膚如雪园匹。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書人閱讀 49,816評(píng)論 1 290
  • 那天劫灶,我揣著相機(jī)與錄音裸违,去河邊找鬼。 笑死本昏,一個(gè)胖子當(dāng)著我的面吹牛累颂,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播凛俱,決...
    沈念sama閱讀 38,957評(píng)論 3 408
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼料饥!你這毒婦竟也來(lái)了蒲犬?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書人閱讀 37,718評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤岸啡,失蹤者是張志新(化名)和其女友劉穎原叮,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體巡蘸,經(jīng)...
    沈念sama閱讀 44,176評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡奋隶,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,511評(píng)論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了悦荒。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片唯欣。...
    茶點(diǎn)故事閱讀 38,646評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖搬味,靈堂內(nèi)的尸體忽然破棺而出境氢,到底是詐尸還是另有隱情,我是刑警寧澤碰纬,帶...
    沈念sama閱讀 34,322評(píng)論 4 330
  • 正文 年R本政府宣布萍聊,位于F島的核電站,受9級(jí)特大地震影響悦析,放射性物質(zhì)發(fā)生泄漏寿桨。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,934評(píng)論 3 313
  • 文/蒙蒙 一强戴、第九天 我趴在偏房一處隱蔽的房頂上張望亭螟。 院中可真熱鬧,春花似錦骑歹、人聲如沸媒佣。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 30,755評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)默伍。三九已至欢嘿,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間也糊,已是汗流浹背炼蹦。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 31,987評(píng)論 1 266
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留狸剃,地道東北人掐隐。 一個(gè)月前我還...
    沈念sama閱讀 46,358評(píng)論 2 360
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像钞馁,于是被迫代替她去往敵國(guó)和親虑省。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,514評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容

  • 1. 前言 從16年微信小程序內(nèi)測(cè)的時(shí)候到如今僧凰,微信小程序用時(shí)間與實(shí)踐證明了自己的變革與價(jià)值探颈,微信小程序的規(guī)則也在...
    keyuan0214閱讀 67,133評(píng)論 4 26
  • 眾所周知, 小程序的有一個(gè)1M大小的限制. 而優(yōu)美的界面離不了各種圖形. 如果將這些圖形集成到小程序中. 其臃腫的...
    achar閱讀 5,400評(píng)論 0 10
  • 聽(tīng)說(shuō)這兩天是考研成績(jī)公布的日子伪节, 不知道此時(shí)此刻的你心情是怎樣的? 是仰天大笑绩鸣,英雄如我 還是以淚洗面怀大,腸子悔青 ...
    孟享專欄閱讀 588評(píng)論 0 1
  • 感賞兒子做了數(shù)學(xué)卷一張,英語(yǔ)卷一張呀闻,數(shù)學(xué)還做了2頁(yè)復(fù)習(xí)題化借,兒子從去年開(kāi)始一直對(duì)做作業(yè)自我抗拒,以前我也做不到放任與...
    鄭巧莉閱讀 134評(píng)論 0 3