美文网首页node那些事
node系列之inquirer实现命令交互

node系列之inquirer实现命令交互

作者: _静夜听雨_ | 来源:发表于2022-06-15 16:46 被阅读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

    相关文章

      网友评论

        本文标题:node系列之inquirer实现命令交互

        本文链接:https://www.haomeiwen.com/subject/xleqvrtx.html