我有一个离子3页面需要刷新页面的数据(如果是从navCtrl.setRoot()
输入的,而不是如果页面是通过navCtrl.pop()
返回的话)。我正在使用ionViewDidEnter()
来检测网页的输入时间,但无法确定如何区分setRoot()
的条目和pop()
的条目。
我的项目是一个标签项目,因此每次选择页面标签时都会出现setRoot()
。
答案 0 :(得分:1)
<强>更新强>
您需要在此处使用Events。您需要uint16_t b = 0b0011101100010101;
Override
事件,如下所示。
.TS
back button
旧答案:
@ViewChild(Navbar) navBar: Navbar;
ionViewDidLoad() {
this.navBar.backButtonClick = (e: UIEvent) => {//override back button
this.events.publish(Handlers.NEW_PROJECT_PAGE_BUDGET_HANDLER, this.data);
this.navCtrl.pop();
}
}
表示将新页面推送到导航堆栈。因此,您可以使用页面的navCtrl.setRoot()
或constructor()
。
ionViewDidLoad() - This event only happens once per page being created
表示您只能使用navCtrl.pop()
来检测(或触发)它,因为它使用ionViewDidEnter() - Runs when the page has fully entered and is now the active page. This event will fire, whether it was the first load or a cached page.
页面。