我在Javascript中使用多维数组(而不是JSON)。
var Ar = [
['1','2013','A','Name1','1','1','3','3','1','2','3','4',''],
['2','2014','B','Name2','1','2','3','1','1','2','3','5',''],
['3','2015','C','Name3','1','2','4','4','1','2','5','4','']
];要将阵列Ar发送或存储到Firebase云中,我使用:
var data = new Firebase("xxxx.firebaseIO.com");
data.set(Ar);我经常使用这个二维数组形式。
从Firebase获得或存储单个数据或数组的选项是什么?
希望你能帮上忙
谢谢K
发布于 2015-07-11 22:21:14
var array = [
['1','2013','A','Name1','1','1','3','3','1','2','3','4',''],
['2','2014','B','Name2','1','2','3','1','1','2','3','5',''],
['3','2015','C','Name3','1','2','4','4','1','2','5','4','']
];
var ref = new Firebase('https://xxxx.firebaseio.com/');
ref.set(array);
ref.on('value', function(snapshot) {
var value = snapshot.val();
console.log(value);
console.log(value[2][3]);
});上述产出如下:
[["1", "2013", "A", "Name1", "1", "1", "3", "3", "1", "2", "3", "4", ""],
["2", "2014", "B", "Name2", "1", "2", "3", "1", "1", "2", "3", "5", ""],
["3", "2015", "C", "Name3", "1", "2", "4", "4", "1", "2", "5", "4", ""]]
"Name3"每当数组的任何部分发生变化时,value事件都会再次触发,on('value'回调将被调用。
如果要更新数组,则有两个选项。
array[2][3] = "New Text";
ref.set(array);这将将整个数组发送到Firebase。另一种方法是在数据库中直接更新元素2中的元素:
ref.child(2).child(3).set("Newest Text");无论您使用哪种方法,on('value'回调都将再次被调用。
查看这个jsbin以获得代码的工作版本:http://jsbin.com/nawatetuya/edit?js,console
发布于 2015-07-11 11:58:36
如果您使用的是角,则可以在角Firebase API文档中回答这个问题。
查找$save和$add来保存数据并将其添加到Firebase。要从数据库中获取值,只需赋值如下
var obj = $firebaseObject(ref);
并且您可以将数据从变量获取到DOM,如下所示
$scope.data = obj;
很简单。
您可以在数据到达工厂或服务内部的DOM之前对其进行操作,然后使用控制器获取或显示信息。
https://stackoverflow.com/questions/31355910
复制相似问题