inquirer
可以在命令行询问用户问题,并且可以记录用户回答选择的结果
安装
bash
pnpm add inquirer1
bash
npm install inquirer1
基本使用
实现一个vite简易脚手架
js
const inquirer = require('inquirer');
// import inquirer from 'inquirer'
inquirer.prompt([
{
name: 'project',
type: 'input',
message: 'Project name: ',
},
{
name: 'framework',
type: 'list',
message: 'Select a framework: ',
choices: ['React','Vue','Angular'],
},
{
name: 'variant',
type: 'list',
message: 'Select a variant: ',
choices: ['TypeScript','JavaScript'],
},
]).then(res => {
console.log(res);
}).catch(error => {
console.error(error);
});
// PS D:\Code\blog\test> node .\index.js
// ? Project name: q
// ? Select a framework: Vue
// ? Select a variant: TypeScript
// { project: 'q', framework: 'Vue', variant: 'TypeScript' }1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
在终端实现一个简单的计算器功能
const inquirer = require('inquirer');
inquirer
.prompt([
{
type: 'list',
name: 'operation',
message: '请选择要执行的运算类型:',
choices: ['加法','减法','乘法','除法']
},
{
type: 'number',
name: 'num1',
message: '请输入第一个数字:'
},
{
type: 'number',
name: 'num2',
message: '请输入第二个数字:'
}
])
.then((answers) => {
let result;
switch (answers.operation) {
case '加法':
result = answers.num1 + answers.num2;
break;
case '减法':
result = answers.num1 - answers.num2;
break;
case '乘法':
result = answers.num1 * answers.num2;
break;
case '除法':
result = answers.num1 / answers.num2;
break;
}
console.log(`运算结果为:${result}`);
});
// PS D:\Code\blog\test> node .\index.js
// ? 请选择要执行的运算类型: 加法
// ? 请输入第一个数字: 1
// ? 请输入第二个数字: 2
// 运算结果为:31
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
常用类型
- list √
- input √
- number √
- confirm
- rawlist
- expand
- checkbox
- password
- editor