将 firebase uid 推送到多个位置-Angularfire2 Ionic 3
Push firebase uid to multiple locations - Angularfire2 Ionic 3
我有以下内容,它只是将名称与 uid 一起推送到数据库中。我想同时将该 uid 存储在另一个位置。我怎样才能做到这一点?我正在使用 ionic 3,angularfire2。
addName() {
let prompt = this.alertCtrl.create({
title: 'Name of user',
message: "Enter a name for this new user",
inputs: [
{
name: 'Name',
placeholder: 'Username'
},
],
buttons: [
{
text: 'Cancel',
handler: data => {
console.log('Cancel clicked');
}
},
{
text: 'Save',
handler: data => {
this.users.push({
title: data.Name,
});
this.posts.push({
title: data.Name
});
}
}
]
});
prompt.present();
}
提前致谢
您的代码不对用户进行身份验证,因此不涉及 UID(用户 ID 的缩写)。
但是,如果您希望在写入两个位置时使用相同的 推送 ID:
handler: data => {
var key = this.users.push().key;
this.users.child(key).set({
title: data.Name,
});
this.posts.child(key).set({
title: data.Name
});
}
您甚至可以将两个 set
操作组合成一个更新,但我不确定您的 users
和 posts
引用是如何关联的。如果两者都是根的直接子代,则为:
handler: data => {
var key = this.users.push().key;
var updates = {};
updates["users/"+key+"/title"] = data.Name;
updates["posts/"+key+"/title"] = data.Name;
this.ref.update(updates);
}
我有以下内容,它只是将名称与 uid 一起推送到数据库中。我想同时将该 uid 存储在另一个位置。我怎样才能做到这一点?我正在使用 ionic 3,angularfire2。
addName() {
let prompt = this.alertCtrl.create({
title: 'Name of user',
message: "Enter a name for this new user",
inputs: [
{
name: 'Name',
placeholder: 'Username'
},
],
buttons: [
{
text: 'Cancel',
handler: data => {
console.log('Cancel clicked');
}
},
{
text: 'Save',
handler: data => {
this.users.push({
title: data.Name,
});
this.posts.push({
title: data.Name
});
}
}
]
});
prompt.present();
}
提前致谢
您的代码不对用户进行身份验证,因此不涉及 UID(用户 ID 的缩写)。
但是,如果您希望在写入两个位置时使用相同的 推送 ID:
handler: data => {
var key = this.users.push().key;
this.users.child(key).set({
title: data.Name,
});
this.posts.child(key).set({
title: data.Name
});
}
您甚至可以将两个 set
操作组合成一个更新,但我不确定您的 users
和 posts
引用是如何关联的。如果两者都是根的直接子代,则为:
handler: data => {
var key = this.users.push().key;
var updates = {};
updates["users/"+key+"/title"] = data.Name;
updates["posts/"+key+"/title"] = data.Name;
this.ref.update(updates);
}