7***@qq.com
7***@qq.com
  • 发布:2020-09-11 11:07
  • 更新:2021-02-11 02:27
  • 阅读:1527

uni.navigateBack跳转页面会重复创建页面进程

分类:uni-app

我从主页A页面点击按钮,进入子页面B,然后又返回到A页面,再次点击按钮进入到子页面B,B页面又被重新创建,上一次的没有被销毁,导致代码重复执行。我想问怎么才能只创建一次页面进程,然后下一次进去就不重新创建,直接跳转到B页面?

2020-09-11 11:07 负责人:无 分享
已邀请:
m***@foxmail.com

m***@foxmail.com - maoxmao

关于你的问题:
A:uni.navigateTo(B)
B:uni.navigateBack()

一般我们都是用 redirectTo 这样永远都只有一个活动页面
A:uni.redirectTo(B)
B:uni.redirectTo(A)

如果要实现 ABCDEDFG...N 全部只创建一次并且能返回到任意一个已缓存的页面.需要自己实现一个 window.history 来跟踪并映射 getCurrentPages() 里面正确的 page, 然后通过 navigateBack(endIndex-startIndex-1) 跳过去并等待正确销毁 start...end 之间中途所有的页面. 内存和CPU都遭不住. 实在是得不偿失.

该问题目前已经被锁定, 无法添加新回复