如何区分页面是从前向还是后向导航进入视图。我只想在前向导航时运行一些代码。
答案 0 :(得分:0)
案例1: - 假设您正在从1页导航到另一页 - 转发。即使用navCtrl.push(Page,params)
。
在这里,您可以将代码放在constructor(){}
中。 构造函数中的代码总是在您推送/导航到页面时执行 - 转发。(而不是推送,您也可以将堆栈重置为根页。这也是有效的。)
案例2: - 假设您正在从页面导航回来 - 向后。即用户在应用程序中手动返回或使用navCtrl.pop()
。
在这里,我认为, NOT 有任何内置方式可以识别您是否在背页上导航。在这里,你需要建立自己的逻辑。
例如,PageA - > PageB是你的导航。我从PageA导航时使用localStorage
变量设置为某个值(例如localStorage.setItem('isPushed',true)
) - >网页B
现在,在PageA中,我使用ionViewWillEnter()
编写了此代码:
ionViewWillEnter(){
if(JSON.parse(localStorage.getItem('isPushed')){
localStorage.setItem('isPushed',false);
// Your Code to be executed when entering to back page.
}
}
ionViewWillEnter()
总是在导航特定页面时执行。因此,我的想法是检测它是否从下一页导航到后页。希望这可以帮助。 :)
注意:我没有处理与此相关的所有条件。你必须解决它。这只是一个使用逻辑的想法。