0
/users/[userKey]/invitedTo
にオブジェクトを追加しようとしていますが、set
は既存のデータを削除するので、update
も削除されます。私はで終わるしたい何AngularFire2 - 子に追加する
はこのようなものです:
users
-uniqueuserkey
--name: Name
--InvitedTo
---eventuniquekey1
----eventname: event name 1
----etc
---eventuniquekey2
----eventname: event name 2
----etc
-
// this.event.push(eventObj);
this.event.push(eventObj).then((item) => {
if (item) {
const itemKey = item.key;
for (const key in guests) {
if (guests.hasOwnProperty(key)) {
const invitedObj = {};
const invitedTo = this.db.object(`/users/${key}/invitedTo`);
invitedObj[itemKey] = eventObj;
invitedTo.set({ invitedObj });
}
}
}
});
アップデートは、私が必要とするまさにんが、それはまた、既存の値を削除します。
for (const key in guests) {
if (guests.hasOwnProperty(key)) {
const invitedObj = {};
invitedObj[itemKey] = eventObj;
this.users.update(key, { invitedTo: invitedObj });
}
}
既存のデータを取得して追加するだけですか?
const invitedTo = this.db.list(`/users/${key}/invitedTo`);
invitedTo.push(eventObj);
そうすれば、Firebaseは一意のキーを作成して、invitedTo
ノードに追加します:あなたがオブジェクトを追加したい場合は