Javascript 将字段存储到firestore时,尝试在fieldname中传递变量

Javascript 将字段存储到firestore时,尝试在fieldname中传递变量,javascript,firebase,google-cloud-firestore,Javascript,Firebase,Google Cloud Firestore,因此,基本上,我试图使这个循环中的字段名为EmailBody1、EmailBody2,等等 var all = _.find(item.parts, { which: "TEXT" }); var html = all.body; console.log(html); let z = 0; for (z = 0; z < 40; z++) { // eslin

因此,基本上,我试图使这个循环中的字段名为EmailBody1、EmailBody2,等等



 var all = _.find(item.parts, { which: "TEXT" });
            var html = all.body;
            console.log(html);
            let z = 0;
            for (z = 0; z < 40; z++) {

              // eslint-disable-next-line promise/no-nesting
              db.collection("Users")
                .doc("6IzsLbD4r4R5RXdGB5BQy6xq8Dc2")
                .set({
                  EmailBody: html,
                })
                .then(() => {
                  console.log("Doc successful");
                  return null;
                })

                .catch((error) => {
                  console.error("Error writing doc", error);
                });
            }
          });

          return null;
        });
    });
  });
}



var all=\.find(item.parts,{which:“TEXT”});
var html=all.body;
log(html);
设z=0;
对于(z=0;z<40;z++){
//eslint禁用下一行承诺/无嵌套
数据库收集(“用户”)
.doc(“6IZSLB4R4R5RXDGB5BQY6XQ8DC2”)
.设置({
EmailBody:html,
})
.然后(()=>{
console.log(“Doc successful”);
返回null;
})
.catch((错误)=>{
控制台错误(“写单据错误”,错误);
});
}
});
返回null;
});
});
});
}
但是我尝试了一些不同的方法,比如将字段名本身变成一个变量,或者执行EmailBody[z]或EmailBody{z},但是我尝试的方法似乎都不起作用,我在网上找不到多少关于如何执行此操作的信息。任何帮助都将非常感谢两种方式:

for (z = 0; z < 40; z++) {
  var obj = {};
  obj["EmailBody"+z] = html;

  db.collection("Users")
    .doc("6IzsLbD4r4R5RXdGB5BQy6xq8Dc2")
    .set(obj)
    .then(() => {
      console.log("Doc successful");
      return null;
    })

    .catch((error) => {
      console.error("Error writing doc", error);
    });
}
(z=0;z<40;z++)的
{
var obj={};
obj[“EmailBody”+z]=html;
数据库收集(“用户”)
.doc(“6IZSLB4R4R5RXDGB5BQY6XQ8DC2”)
.set(obj)
.然后(()=>{
console.log(“Doc successful”);
返回null;
})
.catch((错误)=>{
控制台错误(“写单据错误”,错误);
});
}
或者(我认为):

(z=0;z<40;z++)的
{
//eslint禁用下一行承诺/无嵌套
数据库收集(“用户”)
.doc(“6IZSLB4R4R5RXDGB5BQY6XQ8DC2”)
.设置({
[“EmailBody”+z]:html,
})
.然后(()=>{
console.log(“Doc successful”);
返回null;
})
.catch((错误)=>{
控制台错误(“写单据错误”,错误);
});
}
两种方式:

for (z = 0; z < 40; z++) {
  var obj = {};
  obj["EmailBody"+z] = html;

  db.collection("Users")
    .doc("6IzsLbD4r4R5RXdGB5BQy6xq8Dc2")
    .set(obj)
    .then(() => {
      console.log("Doc successful");
      return null;
    })

    .catch((error) => {
      console.error("Error writing doc", error);
    });
}
(z=0;z<40;z++)的
{
var obj={};
obj[“EmailBody”+z]=html;
数据库收集(“用户”)
.doc(“6IZSLB4R4R5RXDGB5BQY6XQ8DC2”)
.set(obj)
.然后(()=>{
console.log(“Doc successful”);
返回null;
})
.catch((错误)=>{
控制台错误(“写单据错误”,错误);
});
}
或者(我认为):

(z=0;z<40;z++)的
{
//eslint禁用下一行承诺/无嵌套
数据库收集(“用户”)
.doc(“6IZSLB4R4R5RXDGB5BQY6XQ8DC2”)
.设置({
[“EmailBody”+z]:html,
})
.然后(()=>{
console.log(“Doc successful”);
返回null;
})
.catch((错误)=>{
控制台错误(“写单据错误”,错误);
});
}