在 Firebase 中获取并存储非 JSON 的多维数组
Get and store multidimensional array not JSON in Firebase
我在 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 Cloud 我使用:
var data = new Firebase("xxxx.firebaseIO.com");
data.set(Ar);
我经常使用这种二维数组形式。
我有什么选择可以从 Firebase Cloud 获取或存储个人数据或数组?
- 喜欢用云端刷新和同步数组 Ar
- 云存储新数据Ar[2][3] = "New Text"
- 从云端获取价值 var x = Ar[2][3]
希望能帮到你
谢谢 K
如果您使用 Angular,可以在 Angular Firebase API docs 中回答。
查找 $save
和 $add
以保存数据并将其添加到 Firebase。要从数据库中获取值,您只需分配一个变量,如
var obj = $firebaseObject(ref);
你可以从变量中获取数据到 DOM 就像
$scope.data = obj;
很简单。
您可以在数据到达工厂或服务内部 DOM 之前对其进行操作,然后使用控制器获取或显示信息。
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"
任何时候数组的任何部分发生变化,值事件将再次触发并调用 on('value'
回调。
如果你想更新数组,你有两个选择。
array[2][3] = "New Text";
ref.set(array);
这会将整个数组发送到 Firebase。另一种方法是直接在数据库中更新 [2][3] 处的元素:
ref.child(2).child(3).set("Newest Text");
无论您使用这两种方法中的哪一种,on('value'
回调都会被再次调用。
查看此 jsbin 以获得代码的工作版本:http://jsbin.com/nawatetuya/edit?js,console
我在 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 Cloud 我使用:
var data = new Firebase("xxxx.firebaseIO.com");
data.set(Ar);
我经常使用这种二维数组形式。
我有什么选择可以从 Firebase Cloud 获取或存储个人数据或数组?
- 喜欢用云端刷新和同步数组 Ar
- 云存储新数据Ar[2][3] = "New Text"
- 从云端获取价值 var x = Ar[2][3]
希望能帮到你
谢谢 K
如果您使用 Angular,可以在 Angular Firebase API docs 中回答。
查找 $save
和 $add
以保存数据并将其添加到 Firebase。要从数据库中获取值,您只需分配一个变量,如
var obj = $firebaseObject(ref);
你可以从变量中获取数据到 DOM 就像
$scope.data = obj;
很简单。
您可以在数据到达工厂或服务内部 DOM 之前对其进行操作,然后使用控制器获取或显示信息。
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"
任何时候数组的任何部分发生变化,值事件将再次触发并调用 on('value'
回调。
如果你想更新数组,你有两个选择。
array[2][3] = "New Text";
ref.set(array);
这会将整个数组发送到 Firebase。另一种方法是直接在数据库中更新 [2][3] 处的元素:
ref.child(2).child(3).set("Newest Text");
无论您使用这两种方法中的哪一种,on('value'
回调都会被再次调用。
查看此 jsbin 以获得代码的工作版本:http://jsbin.com/nawatetuya/edit?js,console