2017-01-18 9 views
2

Ionic 2でSocket.ioを使用しようとしています。配列にバインドされたリストに受信データを表示しようとしています。私は次のコードを持っています。私は、アレイは、ブラウザのコンソールに更新されて見ることができますがイオン2リストがデータで更新されていません

this.socket.on('Message', function(data){ 
    console.log("Received: " + data); 
    this.messages.push(data); 
}) 

とHTMLのように見える、

<ion-content padding> 
    <ion-list> 
    <ion-item *ngFor="let msg of messages"> 
     {{ msg }} 
    </ion-item> 
    </ion-list> 
</ion-content> 

、リストには、すべての変更を反映していません。私は間違って何をしていますか?どんな提案も高く評価されます。

答えて

3

を使用してください。それ以外の場合はthis.は現在のクラスインスタンスを指しません。

this.socket.on('Message', (data) => { 
    console.log("Received: " + data); 
    this.messages.push(data); 
}) 

https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Functions/Arrow_functions

+1

ありがとうございます。それはうまくいった。これらの新しい機能にはまだ慣れています。 –

関連する問題