📅  最后修改于: 2023-12-03 15:17:55.387000             🧑  作者: Mango
Node.js prompt.addProperties()
方法是一个强大的命令行交互库 inquirer.js
提供的方法。它可以用于收集多个用户输入,并将结果写入到指定对象中。
prompt.addProperties()
方法用于将多个询问添加到 inquirer 对象中并执行它们,最后将结果写入指定对象。
该方法通常将用于命令行交互式应用程序的创建,因为它可以以编程方式重复使用,而不必为每个询问都编写一行代码。该方法的用法如下所示:
inquirer
.prompt.addProperties(answers, questions)
.then(callback)
answers
: 该参数是一个对象,表示需要写入输入结果的对象。
questions
: 该参数是一个数组,每个元素代表一个需要询问的问题。每个集合都可以是一个 inquirer 问题对象,也可以是一个纯对象。 问题对象包括类型(输入、列表、复选框等)、名称、消息、默认答案等。
callback
: 对话框完成后的回调函数,它接收一个答案的对象作为它的参数。
下面是一个简单的示例,使用 prompt.addProperties()
方法询问用户的姓名和喜欢的水果,并将结果打印出来:
const inquirer = require('inquirer');
const answers = {};
const questions = [
{
type: 'input',
name: 'name',
message: '请输入你的姓名:',
},
{
type: 'list',
name: 'fruit',
message: '你喜欢哪种水果:',
choices: ['苹果', '香蕉', '西瓜', '桃子'],
default: '苹果',
}
];
inquirer
.prompt
.addProperties(answers, questions)
.then(() => {
console.log(`你好,${answers.name},你喜欢的水果是${answers.fruit}。`);
});
在这个示例中,我们定义了一个空对象 answers
用于存储用户输入的数据。
然后我们定义了一个包含两个问题的数组questions
,第一个问题是使用 input 类型的问题,它将提示用户输入姓名,第二个问题是使用 list 类型的问题,它将提示用户选择他们喜欢的水果。
最后,我们使用 prompt.addProperties()
方法将问题数组和答案对象合并,并设置回调函数以处理最终结果。