[英]Firebase snapshot reference won't return data
我正在使用Firebase,并列出了具有某些优先级的人员。 在我的一项职能中,设置和获取优先级工作正常。 但是在另一种方法中,我只能设置并尝试获取该项目的优先级,并返回“ dataSnapshot.getPriority()不是函数”。
var playersList = new Firebase('https://myfirebase.firebaseIO.com/players')
var winnerSnapshot = playersList.child(winner);
winnerSnapshot.setPriority('1300'); //This is working
var oldPriority = winnerSnapshot.getPriority(); //Not working
实际上,这里有两种不同类型的对象在玩。 Firebase参考和DataSnapshot 。 当您调用new Firebase()时,您将获得一个Firebase引用,该引用允许您写入数据(例如,使用set或setPriority)或附加用于读取数据的回调(例如,使用on或一次)。
这与()或一次()注册的回调通过DataSnapshot接收数据,并且可以调用.getPriority() 上 。 查看Reading Data文档以获取全部详细信息。
例如,要使示例工作,可以执行以下操作:
var winner = "somebody";
var playersListRef = new Firebase('https://myfirebase.firebaseIO.com/players')
var winnerRef = playersListRef.child(winner);
// You use a firebase reference to write data.
winnerRef.setPriority('1300');
// You can also use a firebase reference to attach a callback for reading data.
winnerRef.once('value', function(winnerSnapshot) {
// Inside your callback, you get a DataSnapshot that gives you access to the data.
var priority = winnerSnapshot.getPriority();
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.