0

如何为 JavaScript 中的inquirer.prompt 问题的答案创建函数参数(变量)?我知道如何在不使用变量的情况下做到这一点,但是为了使我的函数 addToTable 在我的代码中更易于使用,我想使用参数。在我的inquirer.prompt 问题的答案部分中,一个连接被用于MySQL 查询。我的问题是如何将 data.department_name 作为连接内的变量传递。

function addToTable ( prompt_name , prompt_answer , table_name , table_col ){

    
    inquirer.prompt([
      {
        type: "input",
        name: prompt_name,
        message: "Type the " + prompt_name + " ?"
        
      }
    ]).then(function (data) {
  
      connection.query("INSERT " + table_name + " (" + table_col + ") VALUES ('" + prompt_answer + "')", function (err, res) {
        if (err) throw err;
      });
     
    })
  };

//then calling the function as so
addToTable("department_name" , "data.department_name" , "department", "name" );
4

1 回答 1

0

我希望我之前搜索过“在 Javascript 中连接动态变量名”。对我有用的是将参数(prompt_name)放在括号中。函数参数如下所示:

function addToTable ( prompt_name , table_name , table_col )

嵌套在该函数中,我的inquirer.prompt 的第二部分如下所示:

connection.query("INSERT " + table_name + " (" + table_col + ") VALUES ('" + data[prompt_name] + "')"

最后像这样调用函数:

addToTable("department_name" , "department" , "name" );

因此,我让 data.department_name 在正确的时间去我想要的地方!

于 2020-11-29T02:03:58.377 回答