Firebase中的订单数据
Order data in Firebase
我是Firebase的新手,我将使用以下标准构建从服务器收集的项目列表:
- 最多10个项目
- 按项目值排序(例如"计数")
这是我的代码
FBRef.orderByChild("count").limitToLast(10).on("child_added", function(snapshot){}
它工作得很好,但当插入新记录时,如果新项目在前10名,是否有Firebase方法可以检查并自动更新列表?或者我需要自己去做?
var FBRef = new Firebase('yours.firebaseio.com');
FBRef.orderByChild("count").limitToLast(5).on("child_added", function(snapshot){
var data = snapshot.val();
var html = "<li>value: " + data.value + " - count: " + data.count + "</li>";
$("#result").prepend(html);
});
$(document).ready(function () {
$("#inputaddbtn").click(add);
});
function add(){
var value = $("#inputvalue").val();
var count = $("#inputcount").val();
$("#inputcount").val("");
$("#inputvalue").val("");
FBRef.push({
value : value,
count : count
})
}
您需要监视更多的事件并处理更多的参数来限制列表。
作为第一步:当元素已从该位置移除或(在您的情况下)位于查询之外时,Firebase将触发child_removed
事件。
您可以处理该事件以从列表中删除子项:
var FBRef = new Firebase('yours.firebaseio.com');
var query = FBRef.orderByChild("count").limitToLast(5);
query.on("child_added", function(snapshot){
var data = snapshot.val();
var html = "<li id='key_"+snapshot.key()+"'>value: " + data.value + " - count: " + data.count + "</li>";
$("#result").prepend(html);
});
query.on("child_removed", function(snapshot){
$('#key_'+snapshot.key()).remove();
});
您会注意到,当添加子项时,我会给li
一个id,然后当Firebase告诉我时,根据该id删除li
。
这包括简单的添加/删除项目。对于一个处理所有案例的完整应用程序,您还应该处理child_changed
和child_moved
。您可能还想处理回调的第二个参数,它指示子项需要执行的项的键。但是,也许您的用例不需要处理这些用例,在这种情况下,以上内容就足够了。
相关文章:
- 如何从pdftron webviewer获取表单数据
- JS验证ajax返回的html中的表单数据
- 在不同的文件中使用Javascript获取表单数据
- 使用Javascript读取Webstorage表单数据
- Uploadify-随机表单数据's已返回上载表单
- 如何在使用ajax提交的codeigniter中使用form_validation验证表单数据
- 在post-expressjs之后持久化表单数据
- 需要一个用于AJAX的Javascript库,其中包含多部分/表单数据
- jQuery发布并获取表单数据
- Ajax表单数据phpPOST不工作
- 如何将整个模型集附加到表单数据中,并在MVC中获得它
- 如何从javascript访问表单数据
- 如何从Angular Payments获取表单数据
- 通过javascript获取pdf文件的表单数据
- 有没有一种方法可以在jQuery.serialize()之前获取表单数据,或者与jQuery.sserialize(()
- 在 Angular2 中构建多部分/表单数据 POST 请求并验证输入类型文件
- 无法读取未定义的属性“用户名” - 通过电子邮件在 Node.js 中发送表单数据
- 使用 Ajax 获取表单数据
- 我无法从引导模式中清除表单数据
- 如何从 django 模板语言获取表单数据