Joe*_*ory 5 javascript nosql firebase firebase-realtime-database
我有一个带firebase的实时数据库,我使用以下代码连接到数据库并从中获取一些数据.
window.onload = function(){
var databaseWebsites = firebase.database().ref('/websites').orderByChild('votes');
console.log(databaseWebsites);
databaseWebsites.on('value', function(snapshot) {
snapshot.forEach(function(childSnapshot) {
var webTemp = document.getElementById(childSnapshot.val().id);
webTemp.style.order = order;
var webText = webTemp.getElementsByClassName('likeText');
webText[0].innerHTML = childSnapshot.val().votes;
order--;
});
order = 0;
});
Run Code Online (Sandbox Code Playgroud)
它按顺序获取所有数据并正确使用它.
问题是,我不希望在用户刷新页面之前更新前端的数据.该系统是一个按投票价值排序的投票系统,如果它不断更新,那将是一个糟糕的用户体验.
任何帮助将不胜感激.
谢谢
小智 10
更改on为once,Firebase会on侦听数据库节点中的更改并发送响应.
databaseWebsites.on('value', function(snapshot) {
Run Code Online (Sandbox Code Playgroud)
至
databaseWebsites.once('value', function(snapshot) {
Run Code Online (Sandbox Code Playgroud)
来自Firebase文档的摘录
每次在指定的数据库引用处更改数据时都会调用value事件,包括对子项的更改.要限制快照的大小,请仅在观察更改所需的最低级别附加.
| 归档时间: |
|
| 查看次数: |
4860 次 |
| 最近记录: |