为了保持简短,我正在创建一个像浏览器应用程序一样的购物车。它的假设是如何工作的:
1)用户选择一个产品,然后将它们带到购物车页面。
问题:项目数组在additem()
方法中传递给ConfirmOrder
,但未打印出来
编辑:这是工作代码。感谢@rapropos在离子论坛上进行修复。
在我的cart.ts文件中(当用户按下添加到购物车按钮时,会调用saveItem()方法
public items = [];
// Both of these params which are to be saved in the array are passed from another page
prodName: string = this.navParams.get('prodName');
prodDesc: string = this.navParams.get('prodDesc');
saveItem() {
let newItem = {
prodName: this.prodName,
prodDesc: this.prodDesc
};
this.addItem(newItem);
}
addItem(item) {
this.items.push(item);
this.navCtrl.push(ConfirmOrderPage, items: this.items);
}
ConfirmOrder.ts
export class ConfirmOrderPage {
prodName;
items = [];
constructor(public navCtrl: NavController, public navParams: NavParams, public modalCtrl: ModalController) {
}
ionViewDidLoad() {
console.log('ionViewDidLoad ConfirmOrder');
this.items = this.navParams.get('items');
}
}
ConfirmOrder.html
<ion-list>
<ion-item *ngFor="let item of items">{{item.prodName}}</ion-item>
</ion-list>
答案 0 :(得分:0)
OP已使用此修复程序进行了更新。感谢@rapropos在离子论坛上的帮助。修复是添加items: this.items
所以我可以访问接收页面上的数组
this.navCtrl.push(ConfirmOrderPage, items: this.items);