我正在使用离子3.10.3我的根页面是loginPage然后在用户验证之后将其重定向到 HomeViewPage ,如下所示
this.nav.setRoot(HomeViewPage);
现在没有问题,但在 HomeViewPage 如果用户点击添加按钮,则必须重定向到 NewItemPage 我尝试使用
this.nav.setRoot(NewItemPage, {itemID: _id, isNew: _isNew});
和
this.nav.push(NewItemPage, {itemID: _id, isNew: _isNew});
bellow是新功能
newItem(){
this.events.publish('apps:viewItem', this.handlerService.getNewID(), "1");
}
这是app.component.ts中的代码接收事件
this.events.subscribe('apps:viewItem', (_id, _isNew) => {
this.menu.close();
this.rootPage = NewItemPage;
this.nav.setRoot(NewItemPage, {itemID: _id, isNew: _isNew}).then(()=>{
this.nav.popToRoot();
}).catch(err=>{
alert("NewItemPage Error : " + err.toString());
});
});
但仍然在 HomeViewPage 中,即使我多次点击该按钮 但当我点击后退按钮时,它返回 NewItemPage ,但现在数据已存在。
任何帮助
答案 0 :(得分:0)
问题出在NewItemPage中,我使用的是空对象属性
<ion-item>
<ion-label>Activity Type</ion-label>
<ion-select [(ngModel)]="handlerService.dataService.item.activityType">
<ion-option *ngFor="let g of handlerService.dataService.activityTypes" value="{{g.id}}">{{ g.name }}</ion-option>
</ion-select>
</ion-item>
handlerService.dataService.item是一个必须初始化的对象