2017-01-20 8 views
2

を使用してfirebase内の既存のオブジェクトに新しい子オブジェクトを追加し、私はangularfire2

users : { 
    -KamJGmnL8S4Nn_okIcc : { 
     name: "Someone", 
     email: "example.com", 
     website: "somesite.com" 
    }, 
    -laeghmnw8S4Nn_9inb47 : { 
     name: "Someone", 
     email: "example.com", 
     website: "somesite.com" 
    } 
} 

としてfirebaseに保存されたユーザデータを持って、私は上記の最初のユーザーを言って、ユーザーに新しいオブジェクト{ collections: <key> : { ... }, <key>: { ... } }を追加する必要がありますオブジェクト。いくつかのオブジェクトを持つことができるので、collectionsにプッシュできるようにする必要があります。

私はこれをanglefire2でどうやって行うことができますか?

答えて

2

あなたは個別にlistpushにそれらを使用することができます。

const uid = "-KamJGmnL8S4Nn_okIcc"; 
const list = angularFire.database.list(`users/${uid}/collections`); 
list.push({ name: "collection-a" }); 
list.push({ name: "collection-b" }); 

それとも、(マルチロケーション・アップデートで)一緒にupdateにそれらをobjectを使用することができます。

const uid = "-KamJGmnL8S4Nn_okIcc"; 
const obj = angularFire.database.object(`users/${uid}`); 

let collections = { 
    `collections/${obj.$ref.push()}/name`: "collection-a", 
    `collections/${obj.$ref.push()}/name`: "collection-b", 
}; 
obj.update(collections); 

注意をそのプッシュキーはクライアントで生成され、引数なしでpushを呼び出すことで生成できます。