Ionic 3:尝试diff'[object Object]'时出错

时间:2018-02-14 15:56:22

标签: angular ionic-framework cordova-plugin-fcm

我想以循环的形式向主页显示FCM推送通知。 但是,我收到了这个错误

  

HomePage.html:18 ERROR错误:尝试diff'[object Object]'时出错。只允许数组和迭代(...)

我很抱歉..继续Ionic 3(和打字稿),无论如何,提前谢谢你

这是我的代码:

app.component.ts

      // Receiving token from FCM
      FCMPlugin.getToken(
        (t) => {
          console.log(t);
        },
        (e) => {
          console.log(e);
        }
      );

      // Receiving notification when app is in background
      FCMPlugin.onNotification(
        (infos) => {
          this.dataProvider.fcmPassing(infos);
          console.log(infos);

          // Display notification when app on foreground
          let basicAlert = this.alertCtrl.create({
            title: infos.title,
            subTitle: infos.body,
            buttons: ['OK']
          });
          basicAlert.present();
          },
        (e) => {
          console.log(e);
        }
      );

data.ts

  // Calling FCM data
  fcmReceiving() {
    return this.storage.get('fcmData');
  }  

  // Saving FCM data
  fcmPassing(infos) {
    this.storage.set('fcmData', infos);
  }

home.ts

 infos: Promise<any>;
 public notis = [];

 // Calling FCM data via DataProvider
this.dataProvider.fcmReceiving()
.then((info) => {
  console.log('fcm data', info);
  this.infos = info.title;
  this.notis = info;
}) 

home.html的

  <ion-list>
    <ion-item *ngFor="let noti of notis" (click)="passingFCM(infos)">Hello {{noti.title}}</ion-item>
  </ion-list>

1 个答案:

答案 0 :(得分:1)

您评论说notis是一个数组,但您在代码示例中暗示检索到的 info 是一个对象:

console.log('fcm data', info);
this.infos = info.title;
this.notis = info;

在这种情况下,this.notis不是数组。这是任何信息,在您的情况下,它不是一个数组,因为它包含其他数据,如 info.title

将this.notis设置为info

中的数组
相关问题