我试图限制从firebase返回的数据的数量,目前它带回了显然不好的一切。
是否可以带回最新的10行?我正在查看limitToFirst(限制),但无法在我的代码中使用语法。有帮助吗?感谢
当前工作代码:
var myDataRef = new Firebase("https://xxxxx.firebaseio.com/");
$('#btnSubmit').click(function() {
var u = $('#nameIpt').val();
var m = $('#msgIpt').val();
myDataRef.push({name: u, text: m});
$('#msgIpt').val('');
});
myDataRef.on('child_added', function(snapshot) {
var msg = snapshot.val();
displayMsg(msg.name, msg.text);
});
我尝试了以下
var myDataRef = new Firebase("https://xxxxx.firebaseio.com/");
$('#btnSubmit').click(function() {
var u = $('#nameIpt').val();
var m = $('#msgIpt').val();
myDataRef.push({name: u, text: m});
$('#msgIpt').val('');
});
myDataRef.limitToFirst(10).on('child_added', function(snapshot) {
var msg = snapshot.val();
displayMsg(msg.name, msg.text);
});
答案 0 :(得分:1)
您在此处缺少orderByChild()
,orderByValue()
,orderByKey()
或orderByPriority()
。
在使用endAt()
,startAt()
,equalTo()
,isEqual()
,limitToFirst()
和limitToLast()
之前,您需要先添加它们。
示例:强>
myDataRef.orderByChild(refChild).limitToFirst(10).on('child_added', function(snapshot) {
var msg = snapshot.val();
displayMsg(msg.name, msg.text);
});