uniapp 配置 底部 TabBar

前言:写代码是需要团队的,需要跟更厉害的代码高手共同维护项目,需要一个环境,而我现在的环境利于我Vue技术的成长,从而我现在将react 技术搁置。

一、配置TabBar的方式

学习的重要途经就是查官网,所以,我直接登陆uniapp官网,并在其中搜索 tabBar组件,找到了它在package.json的配置方式,经过测试调整,成功显示。

 二、代码实践如下

逻辑思路:

(1)在package.json这个全局文件中,添加配置项(官网有例子)

(2)之后,需要在package.json的里面的pages选项上,也要添加tabBar组件的路径

"pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages
		{
			"path": "pages/index/index",
			"style": {
				"navigationBarTitleText": "分享"
			}
		},
		{
			"path": "pages/read/read",
			"style": {
				"navigationBarTitleText": "阅读"
			}
		},
		{
			"path": "pages/mine/mine",
			"style": {
				"navigationBarTitleText": "我的"
			}
		}
	],

"tabBar": {
		"color": "#7A7E83",
		"selectedColor": "#3cc51f",
		"borderStyle": "black",
		"backgroundColor": "#ffffff",
		"list": [
			{
				"pagePath": "pages/index/index",
				"iconPath": "static/bottomTabBar/home2_icon.png",
				"selectedIconPath": "static/bottomTabBar/home1_icon.png",
				"text": "分享"
		},
		{
			"pagePath": "pages/read/read",
			"iconPath": "static/bottomTabBar/readTrain2_icon.png",
			"selectedIconPath": "static/bottomTabBar/readTrain1_icon.png",
			"text": "阅读"
		}, {
			"pagePath": "pages/mine/mine",
			"iconPath": "static/bottomTabBar/mine2_icon.png",
			"selectedIconPath": "static/bottomTabBar/mine1_icon.png",
			"text": "我的"
		}]
	}

注意:我右键、弹出的菜单,点击“新建页面”,就会一下,建个同名文件夹和同名文件

三、添加登陆页

思路很简单,在pages.json添加login路由,并把它放在第一个位置上

"pages": [ //pages数组中第一项表示应用启动页
		{
		    "path" : "pages/login/login",
		    "style": {
				"navigationStyle": "custom"
			}
		    
		},

1. 从登录页 跳转到 tabBar

	uni.switchTab({
        //页面路径
		url: '/pages/index/index'
	});

2. 在uniapp的样式单位

使用的是rpx,这是微信小程序适配单位,设计稿以iphone6为标准,目前15rpx=15px

3. 去掉原生导航栏

如图:就是最上面的那部分

 添加代码如下:在pages.json的pages文件中

 "style": {
				"navigationStyle": "custom"
	}

4. 页面内容覆盖了手机顶部的状态栏

如下图:可以看到手机顶部的时间 和 电量都有被遮挡

 产生这样情况的原因是,窗体为沉浸式,解决办法1,不用沉浸式 ,解决办法2,加一个view 设置状态栏的高度。方法1更好,但是我目前没找到,暂用方法2

<view class="status_bar"></view>
.status_bar{
	height: var(--status-bar-height);
	width: 100%;
}

### 创建和配置 UniApp 底部 TabBarUniApp 中创建并配置底部 TabBar 需要准备所需的图标资源文件,这些图标的尺寸建议遵循平台指南以确保最佳显示效果[^1]。 #### 准备工作 为了使 TabBar 的视觉反馈更加直观友好,每个 tab 可以为未选中状态和选中状态下分别指定不同的图标。这不仅提升了用户体验,也使得界面设计更为灵活多样。 #### 修改 `pages.json` 文件 接下来,在项目的根目录下找到或新建名为 `pages.json` 的全局配置文件,并按照官方文档中的说明来定义页面路径以及对应的 tabBar 属性: ```json { "tabs": [ { "pagePath": "pages/index/index", "text": "首页", "iconPath": "static/images/home.png", // 默认图标 "selectedIconPath": "static/images/home-active.png" // 选中时的图标 }, ... ] } ``` 此部分设置决定了应用启动后所展示的第一个页面及其关联的文字描述与图像样式。 #### 添加点击事件监听器 如果希望捕捉到用户切换标签的动作,则可以在相应的页面组件内部通过 JavaScript 方法实现这一功能。具体来说就是在目标页面内的 script 标签里加入如下所示的方法声明: ```javascript export default { methods: { onTabItemTap(info) { console.log('您点击了“' + info.index + '”号选项卡'); } } }; ``` 上述代码片段展示了如何利用 `onTabItemTap()` 来响应用户的交互行为,并打印出被激活的是哪一个索引位置上的项目[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

@穷且益坚,不坠青云之志

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值