node那些事

node系列之inquirer实现命令交互

2022-06-15  本文已影响0人  _静夜听雨_

我们在用脚手架初始化项目的时候,往往会进行一些命令交互,比如是否支持ts等
实际上我们用inquirer就可以实现类似这样的交互,下面我们就来体验一下吧

首先安装inquirer包

npm install inquirer

我们今天用的的类型有:

input、password、checkbox、list、rawlist、editor,更多类型,请自行查询inquirer介绍

案例

const inquirer = require('inquirer')

var questions = [
  {
    type: 'input',
    name: 'name',
    message: "请输入您的用户名"
  },
  {
    type: 'password',
    name: 'pwd',
    message: "请输入您的密码"
  },
  {
    type: 'input',
    name: 'year',
    message: "请输入您的年龄"
  },
  {
    type: 'list',
    name: 'gender',
    message: "请选择您的性别",
    default: 0,
    choices: [
      { value: 1, name: '男' },
      { value: 2, name: '女' }
    ]
  },
  {
    type: 'rawlist',
    name: 'dream',
    message: '你想赚多少钱',
    default: 0,
    choices: [
      { value: 1, name: '100万' },
      { value: 2, name: '1000万' },
      { value: 3, name: '1个亿' },
    ]
  },
  {
    type: 'checkbox',
    name: 'color',
    message: '你最喜欢的颜色',
    default: 'red',
    choices: [
      { value: 'red', name: '红' },
      { value: 'yellow', name: '黄' },
      { value: 'blue', name: '蓝' },
      { value: 'green', name: '绿' },
    ]
  },
  {
     type: 'editor',
     name: 'save',
     message: '请保存你的梦想到文件'
    }
]
inquirer.prompt(questions).then(answers => {
  console.log(`${answers['name']},祝愿您早日实现梦想!` )
})

过程图

image.png
image.png
image.png
image.png
image.png
image.png
image.png
上一篇下一篇

猜你喜欢

热点阅读