喧尘
喧尘
  • 发布:2020-03-16 15:30
  • 更新:2023-09-19 09:48
  • 阅读:4276

reLaunch跳转在h5中不能清空之前的页面栈?

分类:uni-app

详细问题描述

[内容]:reLaunch跳转在h5中不能清空页面栈?

重现步骤

[步骤]
h5项目在页面中使用reLaunch进行跳转页面
a(navigateTo)->b(reLaunch)->c

[结果]
c页面可以返回,直接返回到a页面,没有达到在小程序中应有的清空页面栈效果,相当于只是把b页面重定向了到了c

[期望]
可以清空之前页面栈,进行跳转

IDE运行环境说明

[HBuilder 或 HBuilderX。如果你用其他工具开发uni-app,也需要在此说明] :vscode

uni-app运行环境说明

[运行端是h5或app或某个小程序?]:h5

[项目是cli创建的还是HBuilderX创建的?如果是cli创建的,请更新到最新版cli再试]:cli

[编译模式是老模板模式还是新的自定义组件模式?]:新

2020-03-16 15:30 负责人:无 分享
已邀请:
DCloud_uniCloud_WYQ

DCloud_uniCloud_WYQ

你的意思是在c页面relaunch到c是吗?H5端没法这么操作

  • 喧尘 (作者)

    不好意思 刚才上面b步骤打错了

    应该是 a(navigateTo)->b(reLaunch)->c 按照在小程序上的逻辑c如果返回的话就只能关闭项目了,因为没有页面栈了,reLaunch跳转时将页面栈清空了。

    2020-03-17 21:57

  • 喧尘 (作者)

    在h5上面c页面还能返回到a页面....

    2020-03-17 22:07

DCloud_UNI_FXY

DCloud_UNI_FXY

无法完整控制浏览器的后退功能,js无法清理所有浏览历史,h5中暂不支持该功能

  • 喧尘 (作者)

    uni.reLaunch在h5里不能实现清空历史栈的功能?

    2020-03-17 22:08

  • DCloud_UNI_GSQ

    回复 喧尘: 嗯

    2020-03-18 10:45

  • 喧尘 (作者)

    回复 DCloud_UNI_GSQ: 咱们uniapp文档上 没有tip出来呀

    2020-03-18 11:29

  • DCloud_UNI_GSQ

    回复 喧尘: 好的,已增加Tips:


    H5端调用之后虽然之前页面栈会销毁,但是无法清空浏览器之前的历史记录,此时navigateBack不能返回,但如果存在历史记录的话点击浏览器的返回按钮或者调用history.back()仍然可以导航到浏览器的其他历史记录。

    2020-03-18 12:01

  • 喧尘 (作者)

    回复 DCloud_UNI_GSQ: 现在看到的效果

    a(navigateTo)->b(reLaunch)->c c操作返回 直接返回到a,相当与reLaunch和redirectTo一样将b页面重定向为了c么?

    2020-03-18 12:44

  • DCloud_UNI_GSQ

    回复 喧尘: 不一样,如果是redirectTo,a仍然存活。

    2020-03-18 13:01

  • 喧尘 (作者)

    回复 DCloud_UNI_GSQ: 您的意思是reLaunch方法跳转,虽然用浏览器的返回还可以返回到之前的记录,但其实框架已经把之前的页面栈实例给删了?redirectTo框架只删除了当前页面的实例?


    你好 方便加您个微信沟通一下么? 我的微信是18101211619 您如果方便的话加我一下吧 感谢!

    2020-03-18 13:36

  • DCloud_UNI_GSQ

    回复 喧尘: 是的

    2020-03-18 13:44

南黎

南黎 - 前端小渣渣

请问这个问题最终如何解决的呢

7***@qq.com

7***@qq.com

同问 这个能解决么 或者监听到返回然后拦截了

z***@163.com

z***@163.com

同问,请问怎么解决

BattleHawk76

BattleHawk76

同问,有解决方案了吗?

要回复问题请先登录注册