【发布时间】:2017-10-09 16:00:53
【问题描述】:
为了简短起见,我正在创建一个类似于浏览器应用的购物车。它的工作原理:
1) 用户选择产品,然后将其带到购物车页面。
- 他们可以将产品添加到购物车,此时他们会被重定向到产品页面,以便他们可以添加其他产品或
- 他们可以单击结帐按钮,然后进入订单确认页面,他们可以在其中查看购物车中的每件商品
问题:项目数组在additem() 方法中传递给ConfirmOrder,但没有打印出来
编辑:这是工作代码。感谢 ionic 论坛上的 @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>
【问题讨论】: