解决uniapp的tabBar使用iconfont图标显示方块

今天要写个uniapp的移动端项目,底部tabBar需要添加图标,以往都是以图片的形式引入,但是考虑到不同甲方的主题色也不会相同,使用图片的话,后期变换主题色并不友好,所以和UI商量之后,决定使用iconfont阿里巴巴矢量图标库。

想着就是需要简单的引入图标即可,但万万没想到,uniapp的坑,让我猝不及防,好在摸索了大半天,总算有个好的结果,为了记录这次跌倒的坑,决定写下来,希望能帮到其他人。

不过丑话说前面,每个人报错的原因都不一定相同,请自己进行排查错误之后,再针对性参考别人的意见,当然,代码这东西很玄学,有的时候,什么都对,就是出不来,也不是没有可能的。

  1. 在iconfont图标库选择自己需要用的图标,地址,打包下载至本地,放在static文件夹中,注意,我没有去调整css文件里相对路径或者在线地址什么的,(因为调整之后变成小方块了,图标啥也不显示),就打包下来有什么文件就放什么文件就行了
  2. 避坑如下:在pages.json文件中
javascript 复制代码
"tabBar": {
    "color": "#000000",
    "selectedColor": "#000000",
    "borderStyle": "white",
    "backgroundColor": "#ffffff",
	"iconfontSrc": "/static/icon/iconfont.ttf",//注意这里!!!!一定要在tabBar里,与list同级的位置引入iconfont的src,从static开始写!!!!!!!!
    "list": [{
        "pagePath": "pages/index",
		"iconfont": {
			"text": "\ue604",//这里也需要注意,使用的是iconfont里的Unicode类型下的代码标识,但是!引入时,需要将&#x改为\u,否则无法识别
			"selectedText": "\ue604",
			"color": "#e6e6e6",
			"selectedColor": "#07C160"
		},
        "text": "首页"
      }, {
        "pagePath": "pages/fillingList/index",
        "iconfont": {
        	"text": "\ue605",
        	"selectedText": "\ue605",
        	"color": "#e6e6e6",
        	"selectedColor": "#07C160"
        },
        "text": "旅游"
      }, {
        "pagePath": "pages/mine/index",
        "iconfont": {
        	"text": "\ue677",
        	"selectedText": "\ue677",
        	"color": "#e6e6e6",
        	"selectedColor": "#07C160"
        },
        "text": "个人"
      },
    ]
  },

icon图标显示小方块,搜索了很多文档说需要将iconfont.css文件里的src改为绝对路径啥的,我不知道为啥,按照他们的改了之后,不报错,也出不来。回归了原始的代码之后,iconfont的原文件,我什么都没改,就是需要注意下iconfontSrc的书写位置和地址引入问题 ,以及代码标识前缀改为\u

完美~

收工!

相关推荐
Rysxt_1 天前
UniApp五大UI框架与uni-ui核心区别对比
uni-app·uni-ui
2501_915918411 天前
HTTPS 代理失效,启用双向认证(mTLS)的 iOS 应用网络怎么抓包调试
android·网络·ios·小程序·https·uni-app·iphone
2501_915106322 天前
混合应用(Hybrid)安全加固,不依赖源码对成品 IPA 混淆
android·安全·小程序·https·uni-app·iphone·webview
00后程序员张2 天前
无需越狱,来对 iOS 设备进行调试、管理与分析
android·ios·小程序·https·uni-app·iphone·webview
芒果大胖砸2 天前
uniapp当中如何实现长按复制功能并且能够自由选择内容
开发语言·javascript·uni-app
00后程序员张2 天前
在 iOS 上架中如何批量方便快捷管理 Bundle ID
android·ios·小程序·https·uni-app·iphone·webview
换日线°2 天前
uni-app对接腾讯即时通讯 IM
前端·uni-app
咚咚?2 天前
uniapp [JS Framework] 当前运行的基座不包含原生插件[xxxx],请在manifest中配置该插件,重新制作包括该原生插件的自定义运行基座
开发语言·javascript·uni-app
木子啊2 天前
Uni-app生命周期:执行顺序与避坑指南
前端·javascript·uni-app
快起来搬砖了2 天前
UniApp 全端兼容 OSS 视频上传实现方案
小程序·uni-app·app·h5·文件上传·oss文件上传