在 navigateBack 的 success 回调内调用 getCurrentPages() 返回值(数组)不一致,各机型表现如下:
开发者工具 / 安卓(华为 P9、运行系统 26、微信版本 7.0.5、基础库 2.8.3)
不包含当前页(即点击触发 navigateBack 的页面)
iOS(iPhone 5s、iOS 12.1.2、微信版本 7.0.5、基础库 2.8.3)
包含当前页
框架类型 | 问题类型 | API/组件名称 | 终端类型 | 微信版本 | 基础库版本 |
---|---|---|---|---|---|
小程序 | Bug | getCurrentPages() | 微信iOS客户端 | 7.0.5 | 2.8.3 |
3 个回答
我们后续优化
在navigateBack外面调用getCurrentPages()能解决这个问题, 但还是希望官方优化
const pages = getCurrentPages()
wx.navigateBack({
success: () => {
// 由于安卓跟苹果navigateBack后getCurrentPages()返回的数组不同,所依需要把getCurrentPages()放在外面
pages[pages.length - 2].onLoad(item)
}
})
这个问题又出现了,Android微信版本7.0.19 和ios、开发者工具返回的不一致