收藏
回答

删除小程序页面栈

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 Bug wx.navgateTo() 工具 6.5.3 2.5.1

- 当前 Bug 的表现(可附上截图)


- 预期表现


- 复现路径


- 提供一个最简复现 Demo


首页-A-B-C-A-首页    全都是wx.navgateTo()跳转

本来之前做的时候是在C页面wx.navgateBack(2) 回到A页面然后刷新的

但是 这几天新增一个功能  就是我在首页可以直接跳到B页面 然后到C页面  再从C页面返回A页面  因为跳转的时候没去A页面所以页面栈里没有A页面  我只能使用wx.redirectTo() 跳转到A页面  结果  发现左上角返回后 回到了B页面  而不是首页  是因为我从首页跳到B页面 B页面就保存到页面栈了 因为功能需要  所以都是使用wx.navgateTo()跳转  现在我想知道有没有办法 解决这个问题  就是  首页-B-C-A-首页




回答关注问题邀请回答
收藏

1 个回答

  • Jordan
    Jordan
    2020-11-27

    首先打印一下页面栈

    console.log(getCurrentPages())

    找到B页面的is的值(注意最前面是没有“/”的),假设为"pages/B/B"

    然后在A页面的onUnload函数中写入如下代码

    if (getCurrentPages()[getCurrentPages().length - 2].is == "pages/B/B"{

          wx.navigateBack({

            delta: 1,

          })

    }

    这样的话,如果从A返回的时候遇到B页面,会帮你再返回上一页到首页


    2020-11-27
    有用
    回复
登录 后发表内容