javascript - 函数将 var 调用为未定义

标签 javascript html google-cloud-firestore undefined

我的 javascript 代码中有这个函数:

function fillTemplate({ table_name, id }) {
  console.log("ID OF TABLES  " + table_name);
  return `
  <div class="noten_tabelle_permission" id="noten_tabelle_permission">
    <h1 id="member_name">${id}</h1>
    <table id="${table_name}" style="width:100%">
      <tr>
        <th>Fach</th>
        <th>mündlich</th>
        <th>Klausur</th>
      </tr>
      <!-- Make content with js code -->
    </table>
  </div>
  `;
}   

当我用 this(例如) fillTemplate("grade_table"+ table_number, doc.id); 调用此函数时; 并将 table_name 打印到控制台中,它是未定义的。为什么以及如何解决此问题?
当您需要完整的代码来理解或修复步骤时,这里是整个代码片段:

db.collection("classes").doc(data.readGrades).get().then(function(doc) {
    if (doc.exists) {
        const data = doc.data();
        const members = data.members;

        members.reduce((chain, el) => {

          table_number++;

          const html = fillTemplate("grade_table" + table_number, doc.id);
          document.getElementById("main_padding").insertAdjacentHTML('beforeend', html);

            return chain.then(() =>
                db.collection("users").doc(el).collection("grades").get().then(function(querySnapshot) {
                    querySnapshot.forEach(function(doc) {
                        const data = doc.data();

                        addToTable("grade_table" + table_number, doc.id, data.mdl, data.klu);
                    });
                })
            )
        }, Promise.resolve());
    } else {
        console.log("No such document!");
    }
}).catch(function(error) {
    console.log("Error getting document:", error);
});  

最佳答案

在 fillTemplate() 函数中,您正在请求一个对象{}

您需要更换:-

function fillTemplate({ table_name, id }) {

function fillTemplate(table_name, id) {

这应该可以解决您遇到的问题。

关于javascript - 函数将 var 调用为未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54371910/

相关文章:

javascript - 如何获取 channel 上的所有消息并将其发布到 hastebin?不和谐.js

javascript - 使用 Greasemonkey 帮助隐藏基于文本内容的 DIV 标签

javascript - Angularjs 文本区域验证需要并显示错误消息

javascript - 如何在电子邮件中插入带有一些特殊字符的URL链接到:body?

Dart/Flutter - 回调函数中的 "yield"

javascript - 当选择单选框时向输入字段添加属性

javascript - 将数组变量传递给函数的下一部分

javascript - 如何在表单提交后保留文本(提交后如何不删除自身?)

android - 一起使用 firestore 和 firebase auth/core 时出现问题

ios - Swift FireStore Listener 在第二次加载应用程序时抛出错误