Open
Description
起因
前些日子在用yeoman自定义自己的脚手架的时候忽然对终端交互产生了兴趣。
这些下拉框,单选框,复选框到底是怎么做的呢?
后来了解到yeoman用的是**inquirer.js**。
使用方法
1. 安装
npm install inquirer
2. 使用
var inquirer = require("inquirer");
var validator = require("validator"); // 我使用了validator校验手机号
var questions = [
//是否类型
{
type: "confirm",
name: "sex",
message: "Are you male?",
default: false
},
// 输入类型,添加校验
{
type: "input",
name: "phone",
message: "What's your phone number",
validate: function (value) {
return validator.isMobilePhone(value, 'zh-CN') ? true : "Please enter a valid phone number";
}
},
//select下拉选项
{
type: "list",
name: "weight",
message: "How much is your weight",
choices: ["Large", "Middle", "Small"],
filter: function (value) {
return value.toLowerCase();
}
},
];
inquirer.prompt(questions, function (answers) {
console.log(answers);
});