私は初心者です。ionic2Ng Forループが適切に処理されない
実際には、プッシュ通知にFCMプラグインを使用しています。
これは私が通知ページをクリックすると、それはそれぞれのページ(通知ページ)にリダイレクトもWRKのperfect.andだ私のアプリのcomponent.ts
FCMPlugin.onNotification(function(d){
if(d.wasTapped){
console.log(d);
var nav=self.appCtrl.getActiveNav().setRoot(NotificationsPage);
})
です。
firebaseコレクションからデータを取得し、配列に代入しました。
配列の変数名はNotificationsです。配列の値をconsoledしました。うまくいきます。
virtualScrollを使用してUIに配列を表示します。私のhtml code.This以下
通知にそれぞれのページ(通知ページ)マイ通知ページのコンポーネント(TSファイル)以下
<ion-card class="card" [virtualScroll]="Notifications">
<ion-item (click)="navigate(Notifications.value.TYPE,Notifications.value.FROM,Notifications.value.$key,Notifications.value.TO,Notifications.value.MSG,Notifications.value.STATUS,Notifications.time)" *virtualItem="let Notification">
<ion-avatar item-left>
<img *ngIf="!Notification.userval.FILE" src="https://firebasestorage.googleapis.com/v0/b/apartments-ea9e5.appspot.com/o/default.png?alt=media&token=a64af538-17a7-46e1-9e38-383c1df060cf">
<img *ngIf="Notification.userval.FILE" [src]="Notifications.userval.FILE">
</ion-avatar>
<p>{{Notification.value.MSG}}</p>
<p>{{Notification.time}}</p>
<p style="text-align:right;color:#334bfa;">{{Notifications.value.TYPE}}</p>
</ion-item>
</ion-card>
を押しています。
this.authservice.getalluser().first().subscribe(namelist=>
{
var users=[];
namelist.forEach(userval=>
{
users.push(userval.val());
})
for(var i in val)
{
this.Time=val[i].SEND_TIME;
var timeagoIns = timeago();
var result=timeagoIns.format(this.Time);
console.log(result);
var user=users.filter(users=>users.USER_ID.toString() === val[i].FROM.toString());
this.Notifications.push({
value:val[i],
time:result,
userval:user[0]
})
Console.log(this.Notifications);
})
配列値はUIを更新しません。通知値を管理します。これは問題ありません。
なぜUIは配列値で更新されません。
この問題を解決する方法。
親切、
おかげで私をアドバイス。
おかげで、通知をクリックしてfile.Whenアプリのコンポーネントで配列値を更新しますそれぞれのpage.Howにリダイレクト配列value.Iは、任意のpushnotifications値を渡すdoesnot更新する必要がありますarray.Actually私はそれぞれのページ上のfirebaseコレクションからデータを収集しました。なぜ私は配列の値を更新します。 –
質問を編集して配列更新コードを追加してください。 そうでなければ、多くのことを想定して答えを出すことは非常に難しいです。 – Math10
Kindly Pls Check It.Iコードを更新してください。 –