Inquirer:问答式
inquirer.js —— 一个用户与命令行交互的工具_xhsdnn的专栏-CSDN博客_inquirer
#! /usr/bin/env node const program = require('commander') const shell = require('shelljs') const path = require('path') const inquirer = require('inquirer') // 该命令的版本 program.version('1.0.0') const runQuestion = () => { const promptList = [{ type: 'input', message: '设置一个用户名:', name: 'name', default: "test_user" // 默认值 }, { type: 'input', message: '请输入手机号:', name: 'phone', validate: function (val) { if (val.match(/\d{11}/g)) { // 校验位数 return true // 如果校验通过要返回 true } else { // 校验不通过返回 string 类型的error 信息 return "请输入11位数字" } } }] inquirer.prompt(promptList).then((res) => { console.log(res, 'answers') }) } // 该命令的不同动作(指令) program .command('run') // run 命令 .description('运行项目') // 描述 .action(runQuestion) // 解析命令行传入的参数-找到其对应的指令 program.parse(process.avg)
then 函数 返回一个 问答对象