私の新しいオブジェクトデータをどのように変換するのでしょうか私はFirebaseからJSONフォームに検索しているのでしょうか。
-
21-12-2019 - |
質問
私のainurajsアプリで、私のFirebase、Angularfireデータベースを私のaumulajsアプリで設定しました。私はその前に私のデータをハードコードするために使用します
$scope.data = [
{ name: 'NAME', description: 'DESCRIPTION', type: 'TYPE', etc: 'ETC', etc: 'ETC', etc: 'ETC'... },
{ name: 'NAME', description: 'DESCRIPTION', type: 'TYPE', etc: 'ETC', etc: 'ETC', etc: 'ETC'... },
{ name: 'NAME', description: 'DESCRIPTION', type: 'TYPE', etc: 'ETC', etc: 'ETC', etc: 'ETC'... },
...
...
More Data...
...
...
{ name: 'NAME', description: 'DESCRIPTION', type: 'TYPE', etc: 'ETC', etc: 'ETC', etc: 'ETC'... }
]
.
上記のデータを私のFirebaseデータベースにアップロードしたとき、私は有効な形式のJSONデータを持っていたので、この
に変換しました[
{ "name": "NAME", "description": "DESCRIPTION", "type": "TYPE", "ect": "ETC","ect": "ETC","ect": "ETC"... },
{ "name": "NAME", "description": "DESCRIPTION", "type": "TYPE", "ect": "ETC","ect": "ETC","ect": "ETC"... },
{ "name": "NAME", "description": "DESCRIPTION", "type": "TYPE", "ect": "ETC","ect": "ETC","ect": "ETC"... },
...
...
]
.
これは有効なJSON形式です。現在、i console.log(FirebasERef)のとき、私のデータは以下のフォームで取得されています。これはまさに私のGoogle Chromeコンソールで見ているものです。
Object {$bind: function, $add: function, $save: function, $set: function, $transaction: function…}
0: Object
description: "DESCRIPTION""
name: "NAME"
type: "TYPE""
etc: "ETC"
etc: "ETC"
etc: "ETC"
...more data...
__proto__: Object
1: Object
description: "DESCRIPTION""
name: "NAME"
type: "TYPE""
etc: "ETC"
etc: "ETC"
etc: "ETC"
...more data...
__proto__: Object
2: Object
description: "DESCRIPTION""
name: "NAME"
type: "TYPE""
etc: "ETC"
etc: "ETC"
etc: "ETC"
...more data...
__proto__: Object
...
...
...More Data...
...
...
.
私の新しいオブジェクトデータをどのように変換しますか私はFirebaseからの検索のところに私が以前に持っていたのと同じ形にしていますか?
これは2つの間の主な違いの写真です。私が受け取っているFirebaseデータは、複数のオブジェクトを持つオブジェクトのようです、そして、私が望む/使用されるデータは複数のオブジェクトの配列です。
解決
このURLによると:オブジェクトto Array - Quick Conversion
FireBaseオブジェクトを変数に割り当てる必要があります。
$scope.firebaseObj
.
それからあなたはそれをあなたの$ scope.dataオブジェクトで詰めることができます:
$scope.data = [];
for (var i = 0; i < $scope.firebaseObj.length; i++) {
$scope.data[i]['name']= $scope.firebaseObj[i].name;
$scope.data[i]['description']= $scope.firebaseObj[i].description;
$scope.data[i]['type'] = $scope.firebaseObj[i].type;
$scope.data[i]['etc1'] = $scope.firebaseObj[i].etc1;
$scope.data[i]['etc12'] = $scope.firebaseObj[i].etc2;
.
.
.
}
.
がある場合にのみ機能します。 所属していません StackOverflow