我如何使文档字段= map(object)?

现在,我的代码只是一个示例:



来自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}

最佳答案

我不确定我是否完全正确地理解了您的问题,但是我假设您希望它们的变量“ 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);

10-08 05:44