我有两个按钮,可以在HomeScore
变量和GuestScore
变量中添加一个按钮。我得到了每个按钮来控制他们各自的数据库条目,但每当我按下主页分数按钮时,它都会删除数据库中的客人分数条目。
它反过来也这样做;每当我按下客人评分按钮时,它都会删除主评分值。
答案 0 :(得分:2)
马特 您正在为家庭和访客分数更新相同的参考。看看以下两行:
var homeScoreRef = firebase.database().ref("scores/");
var guestScoreRef = firebase.database().ref("scores/");
这些参考文献完全相同。如果你设置其中一个,然后设置另一个,第一个将被覆盖。
在下面的代码中,您将这些引用设置为它们各自的值,但请记住,由于您使引用指向数据库的完全相同的部分,因此您只需使用按下的按钮覆盖您的值。
homeScoreRef.set({
home: HomeScore
});
和
guestScoreRef.set({
guest: GuestScore
});
尝试这样的事情:
var homeScoreRef = firebase.database().ref("scores/home/");
var guestScoreRef = firebase.database().ref("scores/guest/");
或者您可以这样做:
var homeScoreRef = firebase.database().ref("scores/").child("home");
var guestScoreRef = firebase.database().ref("scores/").child("guest");
<强>更新强>
更改引用后,将set()
调用更改为:
homeScoreRef.set(
HomeScore
);
guestScoreRef.set(
GuestScore
);
这应该摆脱你的参考文献中的额外/ home和/ guest。
另外,当你说homeScoreValueRef.on
时,你在哪里得到这个?这个参考是在哪里创建的?因为我认为你打算做homeScoreRef.on
,对吗?我认为这就是你得到NaN
错误的原因。
如果您的代码多于您在Pastebin中显示的代码,请确保更新代码以引用正确的引用,但总的来说,我认为这是您的错误。