《微信小程序》第七章:TabBar设计

系列文章

《微信小程序》https://blog.csdn.net/sen_shan/category_13069009.html

第六章:参数定义与管理https://blog.csdn.net/sen_shan/article/details/153965573

文章目录

目录

系列文章

文章目录

前言

图标下载

[修改 pages.json](#修改 pages.json)

一、概述

二、配置位置

三、字段详解

[四、list 节点说明](#四、list 节点说明)

五、完整代码

六、开发与调试注意事项

七、常见报错速查

演示效果


前言

本文介绍了uni-app开发微信小程序时如何配置底部导航栏(tabBar)。

主要内容包括:

1)在阿里图标库下载图标并保存到指定目录;

2)修改pages.json文件配置tabBar相关参数,包括颜色、选中样式和各tab页的路径、文字、图标;

3)详细解释了tabBar各项配置字段的含义和使用规范;

4)提供了完整的配置代码示例;

5)总结了开发调试中的7个注意事项,如路径大小写敏感、页面必须提前注册、H5与小程序的差异等;

6)最后给出了效果演示和官方文档参考链接。文章旨在帮助开发者快速掌握微信小程序底部导航栏的配置方法。

图标下载

设计图标与活动图标,然后下载到static/icon/tabBar

阿里图标库https://www.iconfont.cn

修改 pages.json

修改 pages.json 文件

复制代码
"tabBar": {
	    "color": "#7A7E83",
	    "selectedColor": "#07c160",
	    "list": [
	      { "pagePath": "pages/index/index", 
		  "text": "首页",
		   "iconPath": "static/icon/tabBar/home.png",
		   "selectedIconPath": "static/icon/tabBar/home-active.png" },
	      { "pagePath": "pages/category/index", 
		   "text": "分类",
		   "iconPath": "static/icon/tabBar/category.png",
		   "selectedIconPath": "static/icon/tabBar/category-active.png" },
	      { "pagePath": "pages/cart/index", 
		   "text": "购物车",
		   "iconPath": "static/icon/tabBar/cart.png",
		   "selectedIconPath": "static/icon/tabBar/cart-active.png" },
	      { "pagePath": "pages/mine/index", 
		  "text": "我的" ,
		   "iconPath": "static/icon/tabBar/mine.png",
		   "selectedIconPath": "static/icon/tabBar/mine-active.png"
		  }
	    ]
	  },

一、概述

基于 uni-app 框架开发的 微信小程序 项目在 pages.json 中配置的底部导航栏(tabBar)字段含义、资源规范及常见注意事项,方便前后端、UI、测试快速查阅。

二、配置位置

pages.json 位于项目根目录,是 uni-app 全局路由与窗口表现配置文件。

tabBar 节点与 "pages" 、 "globalStyle" 同级。

复制代码
{
  "pages": [ ... ],
  "globalStyle": { ... },
  "tabBar": { ... }   // ← 本文档说明对象
}

三、字段详解

四、list 节点说明

每一项对应一个底部标签页,字段如下:

五、完整代码

bash 复制代码
{
	"pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages
		{
			"path" : "pages/login/index",
			"style" : 
			{
				"navigationBarTitleText" : "登录"
			}
		},
		{
			"path": "pages/index/index",
			"style": {
				"navigationBarTitleText": "首页"
			}
		},
		{
			"path" : "pages/cart/index",
			"style" : 
			{
				"navigationBarTitleText" : "购物车"
			}
		},
		{
			"path" : "pages/category/index",
			"style" : 
			{
				"navigationBarTitleText" : "分类"
			}
		},

		{
			"path" : "pages/mine/index",
			"style" : 
			{
				"navigationBarTitleText" : "我的"
			}
		}
	],
	// "tabBar": {"custom": true },
	 "tabBar": {
	    "color": "#7A7E83",
	    "selectedColor": "#07c160",
	    "list": [
	      { "pagePath": "pages/index/index", 
		  "text": "首页",
/* 		    "iconfont": {
		      "text": "\ue602",          //首页图标 unicode 
		      "selectedText": "\uf6eb",
		      "fontSize": "24px",
		      "color": "#7A7E83",
		      "selectedColor": "#07c160"
		    } */
		   "iconPath": "static/icon/tabBar/home.png",
		   "selectedIconPath": "static/icon/tabBar/home-active.png" 
		  },
	      { "pagePath": "pages/category/index", 
		   "text": "分类",
		   "iconPath": "static/icon/tabBar/category.png",
		   "selectedIconPath": "static/icon/tabBar/category-active.png" },
	      { "pagePath": "pages/cart/index", 
		   "text": "购物车",
		   "iconPath": "static/icon/tabBar/cart.png",
		   "selectedIconPath": "static/icon/tabBar/cart-active.png" },
	      { "pagePath": "pages/mine/index", 
		  "text": "我的" ,
		   "iconPath": "static/icon/tabBar/mine.png",
		   "selectedIconPath": "static/icon/tabBar/mine-active.png"
		  }
	    ]
	  }, 
	"globalStyle": {
		"navigationBarTextStyle": "black",
		"navigationBarTitleText": "uni-app",
		"navigationBarBackgroundColor": "#F8F8F8",
		"backgroundColor": "#F8F8F8"
	},
	"uniIdRouter": {}
}

六、开发与调试注意事项

  1. 路径大小写敏感

微信小程序真机区分大小写,确保 pages.json 中的 pagePath 与目录完全一致。

  1. 页面必须提前注册

所有 pagePath 必须在 "pages" 数组里先声明,否则编译失败。

  1. H5 与小程序差异

H5 端 tabBar 由 uni-app 模拟,自定义性更高;小程序端完全受微信客户端约束,不支持动态隐藏某一项。

  1. 红点/数字角标

需通过 uni.setTabBarBadge / uni.removeTabBarBadge 在业务逻辑中控制,与配置无关。

  1. 图标颜色

微信会取图标 有像素区域 做纯色填充,因此设计稿务必使用 纯灰度图标,否则会出现色差。

  1. 审核经验

文字需与页面功能强相关,避免"未实现功能"被拒。

7.图标规范

图标 8 张(4 功能 ×2 状态)已压缩 ≤40 KB

图标命名规范: *-active.png 为选中态

七、常见报错速查

八、参考资料
uni-app 官方路由配置https://uniapp.dcloud.net.cn/collocation/pages.html#tabbar

微信小程序 tabBar 设计指南https://developers.weixin.qq.com/miniprogram/design/

演示效果

相关推荐
mon_star°7 小时前
消防安全培训小程序项目亮点与功能清单
小程序
自然 醒7 小时前
uni-app开发微信小程序,如何使用towxml去渲染md格式和html标签格式的内容?
微信小程序·uni-app·html
编程迪7 小时前
基于Java和Vue开发的在线问诊系统医疗咨询小程序APP
小程序
CHU7290359 小时前
知识触手可及:在线教学课堂APP的沉浸式学习体验
前端·学习·小程序
竟未曾年少轻狂9 小时前
微信小程序-组件开发
微信小程序·小程序
CHU7290359 小时前
在线教学课堂APP功能版块设计方案:重构学习场景的交互逻辑
java·学习·小程序·重构
焦糖玛奇朵婷10 小时前
盲盒小程序开发,盲盒小程序怎么做
java·大数据·服务器·前端·小程序
想七想八不如1140810 小时前
【GitHub开源】一款极简跨平台 Todo 应用:微信小程序 + Windows 桌面挂件 + 实时同步
微信小程序·开源·github
笨笨狗吞噬者11 小时前
代理的妙用:uni-app 小程序是怎样用 `Proxy` 和 `wrapper` 抹平平台差异的
前端·微信小程序·uni-app
CHU7290351 天前
便捷约玩,沉浸推理:线上剧本杀APP功能版块设计详解
前端·小程序