NervJS / taro

开放式跨端跨框架解决方案,支持使用 React/Vue/Nerv 等框架来开发微信/京东/百度/支付宝/字节跳动/ QQ 小程序/H5/React Native 等应用。 https://taro.zone/
https://docs.taro.zone/
Other
35.32k stars 4.77k forks source link

ios下切换tabbar白屏 #14935

Open damon35868 opened 9 months ago

damon35868 commented 9 months ago

相关平台

H5

浏览器版本: safari 10 使用框架: React

复现步骤

进入网站后,点击切换底部的tabbar,会出现白屏

期望结果

正常跳转页面

实际结果

跳转后白屏

环境信息

 Taro CLI 3.6.19 environment info:
    System:
      OS: macOS 13.6.1
      Shell: 5.9 - /bin/zsh
    Binaries:
      Node: 16.19.0 - ~/.nvm/versions/node/v16.19.0/bin/node
      Yarn: 1.22.19 - /usr/local/bin/yarn
      npm: 8.19.3 - ~/.nvm/versions/node/v16.19.0/bin/npm
    npmPackages:
      @tarojs/cli: 3.6.19 => 3.6.19 
      @tarojs/components: 3.6.19 => 3.6.19 
      @tarojs/helper: 3.6.19 => 3.6.19 
      @tarojs/plugin-framework-react: 3.6.19 => 3.6.19 
      @tarojs/plugin-platform-h5: 3.6.19 => 3.6.19 
      @tarojs/react: 3.6.19 => 3.6.19 
      @tarojs/runtime: 3.6.19 => 3.6.19 
      @tarojs/shared: 3.6.19 => 3.6.19 
      @tarojs/taro: 3.6.19 => 3.6.19 
      @tarojs/taro-loader: 3.6.19 => 3.6.19 
      @tarojs/webpack5-runner: 3.6.19 => 3.6.19 
      babel-preset-taro: 3.6.19 => 3.6.19 
      eslint-config-taro: 3.6.19 => 3.6.19 
      react: ^18.0.0 => 18.2.0 
ZakaryCode commented 9 months ago

请补充可复现示例及对应环境、录屏等相关信息

damon35868 commented 9 months ago

请补充可复现示例及对应环境、录屏等相关信息

网址:https://wujuxian.net/media 视频:https://cdn.wujuxian.net/static/7aba6b4692ae184c8ca53000f182fa551701827846095.mp4

ZakaryCode commented 9 months ago

所示网址并未能在 iOS 端复现到该问题,白屏状态有无更多信息?

damon35868 commented 9 months ago

所示网址并未能在 iOS 端复现到该问题,白屏状态有无更多信息?

进入后等页面渲染还没完成就快速切换,才可复现

ZakaryCode commented 9 months ago

看了下还挺难复现的,应该是由于切换过快导致 taro_tabbar_page 类没有被正常加入到页面节点中,可以试试在 onshow 事件中为页面节点添加该类,来尝试规避该问题

damon35868 commented 9 months ago

看了下还挺难复现的,应该是由于切换过快导致 taro_tabbar_page 类没有被正常加入到页面节点中,可以试试在 onshow 事件中为页面节点添加该类,来尝试规避该问题

好的我试试,添加到根结点吗? 这个问题我看到几年前就有issues了,很多人遇到,还请官方后续尽可能修复下,感谢

ZakaryCode commented 9 months ago

好的我试试,添加到根结点吗? 这个问题我看到几年前就有issues了,很多人遇到,还请官方后续尽可能修复下,感谢

和之前不是一个问题,页面根节点,可以根据 ID 查

image
damon35868 commented 9 months ago

好的我试试,添加到根结点吗? 这个问题我看到几年前就有issues了,很多人遇到,还请官方后续尽可能修复下,感谢

和之前不是一个问题,页面根节点,可以根据 ID 查

image

/pages/index/index?stamp=AA 好的,用id话stamp=AA这个参数是固定的吗?

ZakaryCode commented 9 months ago

好的,用id话stamp=AA这个参数是固定的吗?

不是,但是一般这个问题也就是首页会有,那就是 AA,当然从 Taro.getCurrentPages 取会更合理

Brain777777 commented 9 months ago

@damon35868 可以先回退到 v3.6.16 规避这个问题,我当时排查了下来,好像是因为这个 PR #14673 导致的