Не знаю, как добавить новые поля на карту в Firestore, используя переменную, а не жестко закодированное имя поля.
У меня есть структура данных в Firestorm. Коллекция называется webQuiz, а документ называется «12345. Структура данных выглядит так:
roomName: Demo0
roomNumber: 46532
people:{11111:"David, 22222:"Peter}
Обратите внимание, что люди - это объект данных карты.
Я хотел бы добавить еще одно поле на карту людей. Код ниже работает, но вместо данных выглядит
people:{11111:"David, 22222:"Peter, 44444:"Cathy"}
похоже
people:{11111:"David, 22222:"Peter, x:"Cathy"}
Как я могу использовать переменную, которая содержит имя поля в этой ситуации? X должен быть переменной, но он воспринимается буквально как свойство.
function testing(){
var x = "44444"
var y = "Cathy"
var cityRef = db.collection('webQuiz').doc('12345');
var setWithMerge = cityRef.set({
people: {x: y}
}, { merge: true });
Я ожидаю, что выход в Firestorm будет
люди: {11111:"David, 22222:"Peter, 44444:"Cathy"}
но фактический результат на данный момент
люди: {11111:"David, 22222:"Peter, x:"Cathy"}
Спасибо