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

文章讲述了在uniapp的移动端项目开发中,为了避免因主题色变化导致的图片图标不适配问题,选择了使用iconfont。作者详细介绍了如何从iconfont下载图标,正确引入到项目中,特别是在pages.json文件中配置iconfontSrc和修改icon的Unicode代码以使其正常显示。过程中遇到图标显示为小方块的问题,最终解决了这个问题。
摘要由CSDN通过智能技术生成

今天要写个uniapp的移动端项目,底部tabBar需要添加图标,以往都是以图片的形式引入,但是考虑到不同甲方的主题色也不会相同,使用图片的话,后期变换主题色并不友好,所以和UI商量之后,决定使用iconfont阿里巴巴矢量图标库。
想着就是需要简单的引入图标即可,但万万没想到,uniapp的坑,让我猝不及防,好在摸索了大半天,总算有个好的结果,为了记录这次跌倒的坑,决定写下来,希望能帮到其他人。
不过丑话说前面,每个人报错的原因都不一定相同,请自己进行排查错误之后,再针对性参考别人的意见,当然,代码这东西很玄学,有的时候,什么都对,就是出不来,也不是没有可能的。

  1. 在iconfont图标库选择自己需要用的图标,地址
    ,打包下载至本地,放在static文件夹中,注意,我没有去调整css文件里相对路径或者在线地址什么的,(因为调整之后变成小方块了,图标啥也不显示),就打包下来有什么文件就放什么文件就行了
  2. 避坑如下:在pages.json文件中
"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
完美~
收工!

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值