Как сделать поле документа = карта в Firestore? - PullRequest
0 голосов
/ 17 октября 2019

Как мне сделать поле документа = карта (объект)?

Мой код сейчас, просто пример:


имя, возраст и номер пользователя из ввода html

при нажатии кнопки сделайте это:

var nameInput
var ageInput
var userNumberInput
db.collection("users").doc("all_users").set({
 userNumberInput: {
  name: nameInput,
  age: ageInput
}
});

Мой код делает это:

collection --> document  --> field
users      --> all_users --> userNumberInput{name: kasper, age: 17} userNumberInput{name: caroline, age: 20}

Я хочу, чтобы мой код делал это, пример:

collection --> document  --> field
users      --> all_users --> user1{name: kasper, age: 17} user2{name: caroline, age: 20}

1 Ответ

1 голос
/ 17 октября 2019

Я не уверен, правильно ли я понял ваш вопрос, но я предполагаю, что вы хотите, чтобы они указывали значение вашей переменной "userNumberInput", а не фактическую строку "userNumberInput"

Если вы используете ES6тогда вы можете использовать функцию ComputedPropertyName.

var nameInput
var ageInput
var userNumberInput
db.collection("users").doc("all_users").set({
 [userNumberInput]: {
  name: nameInput,
  age: ageInput
}
});

, если нет, то вы можете сделать это по старинке

var nameInput
var ageInput
var userNumberInput
let obj = {}
obj[userNumberInput] = {
  name: nameInput,
  age: ageInput
}
db.collection("users").doc("all_users").set(obj);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...