taro h5页面快速重复触发一个navigateTo会导致页面叠加可滚动展示之前的页面,且会对一个页面生成多个节点

nqwrtyyt  于 2个月前  发布在  其他
关注(0)|答案(1)|浏览(28)

相关平台

H5

浏览器版本: 1
使用框架: React

复现步骤

快速重复点击一个跳转按钮

期望结果

触发navigateTo之后,当前页面立即隐藏,不让再次操作当前页面的任何按钮,且不应当将之前页面与当前页面叠加在一起

实际结果

实际结果是触发跳转之后,当后续页面还没渲染出来之前,前一个页面就一直都在,甚至我重复点击之后,之前页面无论如何都不会隐藏,且渲染的新页面需要通过滚动来查看到

环境信息

馃懡 Taro v3.6.20

  Taro CLI 3.6.20 environment info:
    System:
      OS: Windows 10 10.0.17763
    Binaries:
      Node: 16.20.2 - F:\Node\nodejs\node.EXE
      Yarn: 1.22.22 - F:Node\dev\nvmdata\npm\yarn.CMD
      npm: 7.2.0 - F:Node\dev\nvmdata\npm\npm.CMD
    npmPackages:
      @tarojs/cli: 3.6.20 => 3.6.20 
      @tarojs/components: 3.6.20 => 3.6.20 
      @tarojs/helper: 3.6.20 => 3.6.20 
      @tarojs/plugin-framework-react: 3.6.20 => 3.6.20 
      @tarojs/plugin-mini-ci: ^3.6.29 => 3.6.29 
      @tarojs/plugin-platform-alipay: 3.6.20 => 3.6.20 
      @tarojs/plugin-platform-h5: 3.6.20 => 3.6.20 
      @tarojs/plugin-platform-jd: 3.6.20 => 3.6.20 
      @tarojs/plugin-platform-qq: 3.6.20 => 3.6.20 
      @tarojs/plugin-platform-swan: 3.6.20 => 3.6.20 
      @tarojs/plugin-platform-tt: 3.6.20 => 3.6.20 
      @tarojs/plugin-platform-weapp: 3.6.20 => 3.6.20 
      @tarojs/react: 3.6.20 => 3.6.20 
      @tarojs/runtime: 3.6.20 => 3.6.20 
      @tarojs/shared: 3.6.20 => 3.6.20 
      @tarojs/taro: 3.6.20 => 3.6.20 
      @tarojs/taro-loader: 3.6.20 => 3.6.20 
      @tarojs/webpack5-runner: 3.6.20 => 3.6.20 
      babel-preset-taro: 3.6.20 => 3.6.20 
      eslint-config-taro: 3.6.20 => 3.6.20 
      react: ^18.0.0 => 18.2.0

bc88bdf6fff40358e97b3f39c2f5ef0b_raw.mp4

jv2fixgn

jv2fixgn1#

我也有这个问题,H5在弱网环境下,执行路由跳转会先加载下一个页面的资源,在资源加载完毕之前还是停留在当前页面上,这时候可以重复触发路由跳转,结果导致Taro页面渲染异常

相关问题