2017-02-02 3 views
0

Firebase dbでアレイを更新しようとしています。 Firebaseのユーザコレクションです。 私はグループを作成しようとしており、ユーザー/グループコレクション内のIDを更新しています。AngularFire2で配列の要素を押し込む方法は?

"users" : { 
    "F0m0l0JhIXMhlQmEMv5ci1MapLM2" : { 
     "address" : "Address 123334", 
     "displayName" : "Prashant 1", 
     "email" : "[email protected]", 
     "groups" : [ "-KbzjEnTCGAto8SQbvzc", "-KbzjCLP3Aw2jfa0NmHO" ], 
     "name" : "Prashant", 
     "phone" : "9900XXXX190" 
    } 
    } 

私はAngularFire2を使用してgroups配列の新しいキーを追加します。配列を更新するには?

+0

この配列は、署名に何かを追加する前に解析する必要があります。 –

+0

あなたは最初にローカル配列にコピーし、新しい要素を追加してGroupsにプッシュすることを意味しますか? – user3440700

答えて

0

は、私はあなたがangularefire2使用していると仮定し、あなたはその後、独自のキーを使用する場合は

... 
constructor(
    private af: AngularFire, 
) {} 
... 
this.af.database.object('/users/F0m0l0JhIXMhlQmEMv5ci1MapLM2').update({ 
    "groups": "your new key" // <-------- 
    }) 
    .catch (error =>{ 
    console.log(error); 
}); 

になりgroupsノードを更新:

this.af.database.object('/users/F0m0l0JhIXMhlQmEMv5ci1MapLM2/groups').update({ 
    "0": "group 1 key", 
    "1": "group 2 key", 
    "custom key": "group x key" 
}).catch(error => { console.log(error); }); 

という名前の配列にデータを持っている場合updateArrayの場合は、このような配列でgroupsノードを更新します。何かが好き

this.af.database.object('/users/F0m0l0JhIXMhlQmEMv5ci1MapLM2/groups').update(updateArray).catch(error =>{ console.log(error); }); 
+0

これはfirebaseの "groups": "new key"として更新されます。私はグループのようにそれを追加したい。 "グループ":0: "グループ1のキー"、 1: "グループ2のキー"、 2: "グループ3のキー" – user3440700

+0

@ user3440700カスタムキーの追加オプションを参照してください。 – sugarme

関連する問題