Firebase值到localstorage

时间:2018-01-08 15:14:29

标签: javascript firebase firebase-realtime-database local-storage

我是初学者,学习Javascript,我正在制作游戏。
此时,高分将被设置为本地存储。现在我正在学习一个firebase数据库,而highscore正在更新到firebase,但是当我刷新它时会再次从0开始,因为它会在得分时更新>高分。

我想在重新加载页面时将localstorage highscore设置为firebase值。

我尝试了以下内容:

localStorage.setItem("highscore", firebase.database().ref('/score/currentHighscore').once('value'));

但这不起作用。有什么帮助吗?

我在firebase中的得分低于得分 - > currentHighscore。

1 个答案:

答案 0 :(得分:1)

正如我在上面的评论中所解释的那样,once方法是异步的,所以你应该做类似的事情:

return firebase.database().ref('/score').once('value').then(function(snapshot) {
    var highScore = snapshot.val().currentHighscore; //maybe test here it is not null
    localStorage.setItem("highscore", highScore);
});

我建议你看一下https://firebase.google.com/docs/database/web/read-and-write#read_data_once