【问题标题】:Ionic: Having trouble displaying data from array离子:无法显示数组中的数据
【发布时间】: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>

【问题讨论】:

    标签: angular ionic-framework


    【解决方案1】:

    OP 已通过修复更新。感谢离子论坛上的@rapropos 提供帮助。解决方法是添加items: this.items,这样我就可以访问接收页面上的数组

    this.navCtrl.push(ConfirmOrderPage, items: this.items);

    【讨论】:

      猜你喜欢
      • 2019-09-10
      • 2019-01-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-05
      • 1970-01-01
      • 2017-04-18
      相关资源
      最近更新 更多