uni-app 4.32版本uni.setTabBarItem(OBJECT)设置在鸿蒙系统上不生效

uni-app 4.32版本uni.setTabBarItem(OBJECT)设置在鸿蒙系统上不生效

示例代码:

uni.setTabBarItem({ index: 0, text: ‘text’, visible:false, })


## 操作步骤:
必现

## 预期结果:
属性支持

## 实际结果:
设置无反应

## bug描述:
uni.setTabBarItem(OBJECT)设置的属性不支持visible,但是在文档上说是HBuilderX 4.23版本就支持了
信息类别 详细信息
产品分类 uniapp/App
PC开发环境 Windows
PC版本号 win10
HBuilderX类型 正式
HBuilderX版本 4.32
手机系统 HarmonyOS NEXT
手机版本号 HarmonyOS NEXT Developer Beta2
手机厂商 华为
手机机型 mate60
页面类型 vue
vue版本 vue3
打包方式 云端
项目创建方式 HBuilderX

更多关于uni-app 4.32版本uni.setTabBarItem(OBJECT)设置在鸿蒙系统上不生效的实战教程也可以访问 https://www.itying.com/category-93-b0.html

4 回复

bug 已确认,已加分,后续修复

更多关于uni-app 4.32版本uni.setTabBarItem(OBJECT)设置在鸿蒙系统上不生效的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


这个什么时候能修复呢?现在小程序都不支持visible

回复 9***@qq.com: 鸿蒙在 4.36 已修复。小程序不支持 visible 可以去小程序开发者文档反馈

针对您提到的uni-app 4.32版本中uni.setTabBarItem(OBJECT)方法在鸿蒙系统上不生效的问题,这里提供一个可能的解决方案和代码示例。需要注意的是,由于具体的原因可能涉及底层系统兼容性问题或框架本身的bug,以下代码仅供参考,实际使用时可能需要根据具体情况进行调整。

首先,确保您的uni-app项目已经正确配置了tabBar,并且在其他平台(如iOS、Android)上uni.setTabBarItem能够正常工作。以下是一个基本的tabBar配置示例:

// pages.json
{
  "tabBar": {
    "color": "#7A7E83",
    "selectedColor": "#3cc51f",
    "borderStyle": "black",
    "backgroundColor": "#ffffff",
    "list": [
      {
        "pagePath": "pages/index/index",
        "text": "首页",
        "iconPath": "static/icon_home.png",
        "selectedIconPath": "static/icon_home_active.png"
      },
      // 更多tab项...
    ]
  }
}

接下来,尝试使用uni.setTabBarItem动态更改tabBar项。以下是一个简单的代码示例,用于更改首页tab项的图标和文字:

// 在某个页面的onLoad或methods中调用
uni.setTabBarItem({
  index: 0, // 首页tab的索引
  text: '新首页', // 新文字
  iconPath: 'static/new_icon_home.png', // 新图标路径
  selectedIconPath: 'static/new_icon_home_active.png' // 选中时的新图标路径
}, () => {
  console.log('Tab bar item updated');
});

如果上述代码在鸿蒙系统上仍然不生效,您可以考虑以下几个方向进行排查:

  1. 版本兼容性:检查uni-app和鸿蒙系统的版本兼容性,确保没有已知的bug。

  2. 系统权限:确认应用是否拥有修改tabBar的权限,尽管这通常不是由开发者直接控制的,但值得检查应用的权限设置。

  3. 日志输出:增加更多的日志输出,观察调用uni.setTabBarItem后的执行流程,看是否有异常抛出。

  4. 官方文档和社区:查阅uni-app的官方文档和社区,看是否有其他开发者遇到并解决了类似的问题。

  5. 条件编译:考虑使用条件编译为鸿蒙系统提供特定的实现逻辑,虽然这通常不是首选方案,但在某些情况下可能是必要的。

希望这些信息对您有所帮助!如果问题依旧存在,建议向uni-app官方或鸿蒙系统开发者社区寻求更专业的帮助。

回到顶部