美文网首页node
node js命令行交互

node js命令行交互

作者: 涅槃快乐是金 | 来源:发表于2023-02-25 23:00 被阅读0次

在使用npm init的时候,你可以根据提示输入信息,命令行会根据你输入的信息做进一步的信息反馈,这就是一个命令行交互的过程。这一小节,我们将介绍第三方模块co-prompt,它能轻松实现命令行交互程序的开发。

安装

co-prompt模块依赖于co模块,所以,两个模块我们都需要安装。这里只介绍本地安装

Tips :
co模块是非常有名的异步程序处理模块,这里不展开,建议自行学习。
学习co模块之前,需要先了解一下ES6的新特性Generator 函数

$ npm install co co-prompt --save

co-prompt的使用

引用

var co = require('co');
var prompt = require('co-prompt');

API

普通文本提示

  • prompt(msg)
    • msg <String>:提示用户信息的具体内容

例子:

密码文本提示,密码非明文显示

  • prompt.password(msg, [mask])

    • msg <String>:提示用户信息的具体内容
    • mask <String>:输入密码时的显示替换字符,默认是"*"

多行文本提示

  • prompt.multiline(msg)
    • msg <String>:提示用户信息的具体内容

确认提示信息

  • prompt.confirm(msg)
    • msg <String>:提示用户信息的具体内容
    • 返回值 <Bool>:true|false

Tips:
confirm()方法只有在用户输入[y|yes|ok|true]这4个值(不区分大小写)时,才返回true,其他情况都是false,所以,你的确认提示信息必须引导用户输入合适的值或者你程序的业务逻辑需要做必要调整

综合例子

var co = require('co');
var prompt = require('co-prompt');

co(function*() {
    var username = yield prompt('username: ');
    var pwd = yield prompt.password('password: ');
    var desc = yield prompt.multiline('description:');
    var ok = yield prompt.confirm('are you sure?(yes|no)');
    console.log('hello %s %s\n', username, pwd);
    console.log('you describe yourself as:\n' + desc);
    console.log('answer: %s', ok);
    process.exit();
});

co和co-prompt API地址:

co 官网地址:https://www.npmjs.com/package/co

co-prompt 官网地址:https://www.npmjs.com/package/co-prompt

相关文章

  • nodejs ---- Inquirer、ora

    NodeJs 交互式命令行工具 Inquirer.js node 可视化界面 inquirer.prompt(参数...

  • nodeJS基础

    Node.js REPL(交互式解释器) Node.js REPL(Read Eval Print Loop:交互...

  • node.js(五)

    Node.js REPL(交互式解释器) Node.js REPL(Read Eval Print Loop:交互...

  • node js命令行交互

    在使用npm init的时候,你可以根据提示输入信息,命令行会根据你输入的信息做进一步的信息反馈,这就是一个命令行...

  • 大前端

    一、nodejs 进入交互式环境:node 执行js文件:node index.js,.js后缀可以省略。 nod...

  • node.js学习(3)-REPL

    1.Node.js REPL(交互式解释器) Node.js REPL(Read Eval Print Loop:...

  • this

    In the browser In node a. 命令行 b. node执行以下文件node index.js ...

  • 第四章 node初步的了解

    Node.js与Express负责后台处理AngularJS负责网页交互MongoDB负责数据存储 Node.js...

  • 用node.js做一个服务器

    创建server.js文件 命令行node server.js 8888或node server 8888指定端口...

  • 2019-03-28(vue-cli项目)

    vue-cli工程 需要依赖node.js 环境,在电脑上安装node.js,安装完成以后在命令行输入 node ...

网友评论

    本文标题:node js命令行交互

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