Я добавляю уникальное имя, просто добавляя значения в таблицу, но foreach не позволяет мне это делать. Ниже приведен мой код.
db.ref('user_membership_details/').once("value", (snapshot) => {
snapshot.forEach((child) => {
var user_id = child.key;
if (child.uniqueUsername === "") {
db.ref("uniqueName/Name").once("value", async (snapshots) => {
var value = snapshots.val();
console.log("value:", value);
var unique = value.name;
db.ref("uniqueName/Name").update({
"name": unique + 1
})
const unique_name = "user" + unique;
var Obj = {
"name": unique_name,
"userID": user_id,
"Status": "Temp"
}
console.log(Obj);
await db.ref("TakenSubdomains/").push().set(Obj);
await db.ref("user_membership_details/" + user_id).update({
uniqueUsername: unique_name,
Status: "Temp"
})
})
} else {
db.ref("user_membership_details/" + user_id).update({
Status: "Taken"
});
db.ref("/TakenSubdomains/").orderByChild('userID').equalTo(user_id).once("value", function (snapDoms) {
snapDoms.forEach(takeDom => {
db.ref("/TakenSubdomains/" + takeDom.key + "/").update({
Status: "Taken"
});
});
})
}
})
})
Из этого кода я получаю уникальное имя для всех одинаковых снимков. Я не могу добавить счет в таблицу и получить его. Я знаю, что это вызывает много операций чтения и записи.
Вывод:
{
name: 'user190020852',
userID: 'yQMQK8hltkbNopTNtwNWpIkumQ02',
Status: 'Temp'
}
{
name: 'user190020852',
userID: 'yTv8yvGdKqRlbB83O80MxsOaKjZ2',
Status: 'Temp'
}
{
name: 'user190020852',
userID: 'zWluN5RBYzLIbwMVS8kfjWlsec53',
Status: 'Temp'
}
{
name: 'user190020852',
userID: 'zYR2KVNDj4WBFW2T2ywwVG8AAVT2',
Status: 'Temp'
}
Но мне нужен вывод как на console.log (Obj);
{
name: 'user190020852',
userID: 'yQMQK8hltkbNopTNtwNWpIkumQ02',
Status: 'Temp'
}
{
name: 'user190020853',
userID: 'yTv8yvGdKqRlbB83O80MxsOaKjZ2',
Status: 'Temp'
}
{
name: 'user190020854',
userID: 'zWluN5RBYzLIbwMVS8kfjWlsec53',
Status: 'Temp'
}
{
name: 'user190020855',
userID: 'zYR2KVNDj4WBFW2T2ywwVG8AAVT2',
Status: 'Temp'
}
Справка я и спасибо заранее