我正在尝试将 Socket.io 与Ionic 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>
尽管我可以在浏览器的控制台中看到正在更新的数组,但该列表并未反映任何更改。我做错了什么?任何建议都非常感谢。
() =>
使用箭头函数,否则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