我有一个要与Firebase实时数据库一起显示的项目(聊天消息)列表。 我的代码:
ngOnInit() {
...
var self = this;
self.ref.limitToLast(20).on('value',data => {
console.log('chat message added');
self.chatMessages = [];
data.forEach( data => {
self.chatMessages.push({
key: data.key,
message: data.val().message
});
});
});
...
}
那是我的HTML代码:
<ion-list no-lines>
<ion-item *ngFor="let chatMessage of chatMessages">
<p>{{chatMessage.message}}</p>
</ion-item>
</ion-list>
在浏览器中工作正常但是当我尝试在Android真实设备上进行测试时,我有副作用:我可以查看消息&#34;聊天消息已添加&#34;在控制台调试(chatMessages数组已满)但DOM未同步 如果我想显示新列表(从其他用户发送的新消息),我必须点击屏幕。这看起来很奇怪,但只需点击应用程序屏幕中的任意位置即可显示列表。
任何人都可以帮助我吗?我正在使用Ionic 3.