导航 Ctrl:弹出页面后将其保留在缓存中



在我的应用程序的主页上,我使用: this.navCtrl.push(Page2);

当我在第2页上单击"返回"按钮以返回主页,然后导航返回第2页时,我注意到ionViewDidLoad()再次调用,这意味着Page2不再在缓存中。

我想这是因为第2页在堆栈顶部,然后从堆栈中删除。

有没有办法保持页面的当前状态?在Page2上,有一个进度栏,我希望用户使用后退按钮并将其导航回页面时能够看到进度。进度条不能重置

您所说的不可能,当您导航回去时,该视图被破坏了。您可以做的是创建一个可以容纳进度栏的自定义组件。

  • 您将在主页中初始化组件,以便它在堆栈的底部,并且只有在应用程序关闭时才会被销毁。
  • 在您的第2页中,您会调用该功能以初始化进度栏,此功能需要在组件中。
  • 由于页面上的离子堆栈页面,您需要在组件上使用某些CSS(例如position: absolute; top: 0; left: 0; width: 100%; heigth: 100%; z-index: 9999(,并且如果您需要隐藏,只需具有一个布尔值,您将其设置为true false并将CSS设置为ngclass。<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

如果您需要了解如何创建自定义组件,请遵循Josh Morony

的本教程

希望它有帮助:(

最新更新