m0_59118963 2023-04-21 16:58 采纳率: 50%
浏览 3

uni.switchTab跳转tabbar卡住

点击tabbar几次后就开始,点击无法跳转,页面卡死,路径正确,无报错,这怎么解决

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-04-21 21:11
    关注
    • 你可以看下这个问题的回答https://ask.csdn.net/questions/7586491
    • 我还给你找了一篇非常好的博客,你可以看看是否有帮助,链接:uni-app中switchTab回到主页面(tabBar页面)
    • 除此之外, 这篇博客: uni-app 上架应用商店 坑坑坑 使用switchTab时 tabbar按钮跟tabbar页面不对应问题解决以及返回按钮监听的坑中的 实现思路: 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
    • 对Btabbar进行点击事件的监听:跳转登录页面,在登录页面中进行返回事件监听,发送通知又或者直接跳转到指定页面。

    • 以下回答由chatgpt基于相关博客总结生成:

      根据问题描述,可以尝试以下方案进行优化:

      1. 检查代码中是否存在写在switchTab方法后面但实际未执行的代码,若存在可以将这些代码移除;

      2. 在跳转之前进行页面加载和数据请求等操作,避免在跳转时出现卡顿现象;

      3. 应避免频繁调用switchTab方法,只在真正需要跳转时触发,可以通过添加防抖或节流的机制来实现;

      4. 若以上方案无效,可以考虑使用uni.navigateTo方法代替switchTab,这样可以避免关闭其他页面的操作,但需要注意导航栏的显示问题。

      示例代码:

      // 防抖函数
      function debounce(func, delay) {
        let timer;
        return function() {
          const args = arguments;
          const context = this;
          clearTimeout(timer);
          timer = setTimeout(function() {
            func.apply(context, args);
          }, delay);
        };
      }
      
      // 点击跳转事件
      onTabItemTap: debounce(function() {
        if (!this.islogin) {
          uni.navigateTo({
            url: '../login/login'
          });
        } else {
          uni.switchTab({
            url: '../tabbar/home'
          });
        }
      }, 500)
      
    评论

报告相同问题?

问题事件

  • 创建了问题 4月21日

悬赏问题

  • ¥15 关于#开发语言#的问题:FDTD建模问题图中代码没有报错,但是模型却变透明了
  • ¥15 uniapp的h5项目写一个抽奖动画
  • ¥15 TeleScan不能修改bar
  • ¥100 请问我基于逐飞库写的这个有关于mp u6050传感器的函数,为什么输出的值是固定的?
  • ¥15 hadoop中启动hive报错如下怎么解决
  • ¥15 如何优化QWebEngineView 加载url的速度
  • ¥15 关于#hadoop#的问题,请各位专家解答!
  • ¥15 如何批量抓取网站信息
  • ¥15 Spring Boot离线人脸识别
  • ¥15 使用Ant Design Pro vue的时候,使用环境变量的时候,构建报错是什么原因