2017-03-24 68 views
1

我有一個從firebase讀取的應用程序,如果我發佈到數據庫然後刷新,我會看到新的結果。問題是,這是一個聊天應用程序,所以我不想一直刷新,當其他人發佈帖子時,他們應該能夠實時看到。在firebase中使用websockets的正確方法是什麼?

我是用這個了一下:

componentDidUpdate() { 
    setInterval(this.getMessagesAndSetState, 3000); 
    } 

但是,這是沉重的,並導致一個緩慢laggy瀏覽器(雖然它基本上達到我想要的)

是否火力有方法如果被叫,會不會實時更新? 還是它與websockets很好地集成?

回答

1

火力觸發事件,所謂價值,如果有什麼在服務器上更改

下面的例子

var starCountRef = firebase.database().ref('posts/' + postId + '/starCount'); 
starCountRef.on('value', function(snapshot) { 
    updateStarCount(postElement, snapshot.val()); 
}); 

裁判將其稱之爲 https://firebase.google.com/docs/database/web/read-and-write

如果你正在這個應用程式angularjs然後你可以使用像angularfire這樣的庫,它將添加綁定到你的應用程序的三種方式

+0

即時使用re法案。所以調用'on'方法應該實時更新我的​​代碼? –

相關問題