uni-app 百度小程序 tabbar 点击时,开发者工具控制台 onTabItemTap 报错

uni-app 百度小程序 tabbar 点击时,开发者工具控制台 onTabItemTap 报错

开发环境 版本号 项目创建方式
Mac 10.15.7 HBuilderX

示例代码:

"tabBar": {  
    "color": "#333333",  
    "selectedColor": "#468AF7",  
    "borderStyle": "#FAFAFA",  
    "backgroundColor": "#ffffff",  
    "height": "50px",  
    "list": [  
        {  
            "pagePath": "pages/index/index",  
            "iconPath": "static/icons/tabbar/home.png",  
            "selectedIconPath": "static/icons/tabbar/home.png",  
            "text": "首页"  
        },  
        {  
            "pagePath": "pages/search/search",  
            "iconPath": "static/icons/tabbar/search.png",  
            "selectedIconPath": "static/icons/tabbar/search.png",  
            "text": "查询"  
        },  
        {  
            "pagePath": "pages/notice/notice",  
            "iconPath": "static/icons/tabbar/notice.png",  
            "selectedIconPath": "static/icons/tabbar/notice.png",  
            "text": "公告"  
        },  
        {  
            "pagePath": "pages/mine/mine",  
            "iconPath": "static/icons/tabbar/mine.png",  
            "selectedIconPath": "static/icons/tabbar/mine.png",  
            "text": "我的"  
        }  
    ]  
}

操作步骤:

声明如上 tabbar, 问题必现

预期结果:

控制台不报错,可正常使用 onTabItemChange 方法

实际结果:

控制台报错,[Lifecycle Fail] call Page.onTabItemTap method fail: Cannot read property ‘onTabItemTap’ of undefined

bug描述:

正常使用 uni-app 添加 tabbar ,添加成功之后,点击某一个 tabbar,报如附件图片错误。

但是每一个 tabbar 点击过一次之后,再点击就不报错了


更多关于uni-app 百度小程序 tabbar 点击时,开发者工具控制台 onTabItemTap 报错的实战教程也可以访问 https://www.itying.com/category-93-b0.html

12 回复

同样遇到了这个问题,大家有解决的办法麻烦同步一下,谢谢大佬们!

更多关于uni-app 百度小程序 tabbar 点击时,开发者工具控制台 onTabItemTap 报错的实战教程也可以访问 https://www.itying.com/category-93-b0.html


百度小程序我也出现这个问题了,是百度的问题呢?还是开发者工具编译问题?

这个还没有搞清楚

我也遇到了相同的问题,但是提交发布百度小程序审核成功了,可以正常使用1

将百度工具的调试基础库修改成3.180.4

我把调试基本库,改成了3.250.41就没有提示这些错误了,那用户使用的话, 会不会有问题呢?正在测试中

发布时选的最低版本库最好和调试库版本一致

这个应该是百度小程序有问题吧~

啊啊啊啊

上面的问题解决了吗,铁子。可以说一下怎么回事吗

真让人头大

这是一个百度小程序开发中的常见问题。报错原因是百度小程序在首次加载tabbar页面时,会尝试调用页面的onTabItemTap生命周期方法,但此时页面实例还未完全初始化。

解决方法有以下几种:

  1. 在pages.json中为每个tabbar页面添加"onTabItemTap"方法声明:
"pages": [
  {
    "path": "pages/index/index",
    "style": {
      "navigationBarTitleText": "首页",
      "onTabItemTap": "onTabItemTap"
    }
  }
  // 其他页面...
]
  1. 或者在页面脚本中显式定义onTabItemTap方法:
export default {
  onTabItemTap(item) {
    console.log('tab item tap', item)
  }
}
回到顶部