2***@qq.com
2***@qq.com
  • 发布:2024-07-30 11:27
  • 更新:2024-07-30 15:58
  • 阅读:458

【报Bug】uni.setTabBarItem 和 wx.setTabBarItem 设置tabbar页面的文本,呈现效果不一样

分类:uni-app

产品分类: uniapp/小程序/微信

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: Windows 11 家庭中文版 23H2

HBuilderX类型: 正式

HBuilderX版本号: 4.24

第三方开发者工具版本号: 微信开发者工具1.06.2407101

基础库版本号: 3.5.1

项目创建方式: HBuilderX

操作步骤:

1、设置tabbar,其中有一项为首页,并在首页的onShow和onHide中分别对首页设置不同的文本
2、首页中有一处点击跳转到其他页面
3、点击跳转到其他页面

预期结果:

能正常跳转,无报错

实际结果:

能跳转,可控制台报错

bug描述:

项目中遇到一个需求:首页是tabbar页面,当首页显示的时候,底部tabbar的文本显示变为“xxx”,否则文本就是“首页”;
所以我就在首页onShow和onHide时,使用uni.setTabBarItem分别设置不同的文本,当点击首页某一处跳转到其他页面时,控制台报错说“不能在非tabbar页面设置”,弄得我很懵逼(我明明在tabbar页面使用的),然后我就换成了wx.setTabBarItem 就没有报错了

2024-07-30 11:27 负责人:无 分享
已邀请:
DCloud_UNI_yuhe

DCloud_UNI_yuhe

可以具体给一下你是如何用的setTabBarItem吗?

  • 2***@qq.com (作者)

        onShow() {  
    // uni.setTabBarItem({
    // index: 0,
    // text: 'xxx'
    // })
    wx.setTabBarItem({
    index: 0,
    text: 'xxx'
    })
    },
    onHide() {
    // uni.setTabBarItem({
    // index: 0,
    // text: '首页'
    // })
    wx.setTabBarItem({
    index: 0,
    text: '首页'
    })
    },

    2024-07-30 15:12

DCloud_UNI_yuhe

DCloud_UNI_yuhe

我这测试没发现这个情况啊?你可以发一个完整的测试项目吗?

  • 2***@qq.com (作者)

    稍等,我这边先弄一个新的项目测试一下

    2024-07-30 16:02

  • DCloud_UNI_yuhe

    回复 2***@qq.com: 好的

    2024-07-30 16:03

  • 2***@qq.com (作者)

    回复 DCloud_UNI_yuhe: 如果只是点击底部的tabbar切换是没问题的,我这边出问题是在首页中增加了一个点击按钮,当点击时跳转到另外一个非tabbar页面时会报错

    2024-07-30 16:14

  • 2***@qq.com (作者)

    回复 DCloud_UNI_yuhe: 我刚才重新建了一个项目测试一下,还是会有这个问题,就是在跳转非tabbar页面时出现的,不知道你那边有没有出现

    2024-07-30 16:19

  • DCloud_UNI_yuhe

    回复 2***@qq.com: 已复现了,我确认一下问题

    2024-07-30 16:32

  • DCloud_UNI_yuhe

    回复 2***@qq.com: 可以尝试一下延迟执行:


    onHide() {  
    console.log("onHide")
    setTimeout(()=>{
    uni.setTabBarItem({
    index: 0,
    text: '首页'
    })
    },100)
    },

    2024-07-31 10:31

要回复问题请先登录注册