npm 包 promise-readline 使用教程

引言

在前端开发中,经常需要获取用户的输入,而 Node.js 提供了一种比较方便的方法——使用 readline 模块。但是 readline 模块返回的都是回调函数,不够方便。

----- -------- - --------------------
----- -- - --------------------------
    ------ --------------
    ------- --------------
---

----------------------- ------ -- -
    ----------------- - ------
    -----------
---

为了更加方便地使用 readline,可以使用 npm 包 promise-readline。

安装

使用 npm 安装:

--- ------- ----------------

使用示例

promise-readline 和 readline 唯一不同的就是它封装了回调函数,改为了 Promise,使用也更加方便。下面展示了一个简单的使用示例。

----- - --------------- - - ----------------------------
------ -- -- -
    ----- -- - -----------------
        ------ --------------
        ------- --------------
    ---
    ----- ---- - ----- ------------------------
    --------------------------
    -----------
-----

输出:

-------------
--------

API

promise-readline 的 API 与 readline 类似,主要封装了 Interface 的回调函数为 Promise。

createInterface

promise-readline 的入口函数,返回一个 Interface 对象。

----- - --------------- - - ----------------------------
----- -- - -------------------------

readline 类似,options 支持以下属性:

  • input:输入流
  • output:输出流

Interface 对象

Interface 对象是 promise-readline 封装过后的对象,包含以下方法。

rl.question(query[, options])

返回一个 Promise,该 Promise 将在输入完答案后被解决。

----- - --------------- - - ----------------------------
----- -- - -----------------
    ------ --------------
    ------- --------------
---
---------------------------------- -- -
    --------------------------
    -----------
---

支持以下参数:

  • query: 一个问题,被显示给用户。 最后一个字符应该是 ?? 以提示用户提供输入。 它也可以是一个包含两个属性(key 等)的对象,以便在呈现问题时配置读取行为。
  • options
    • hideEchoBack:输入模拟。 如果设置为 true,输入将显示为星号(如密码)。 默认为 false

rl.pause()

暂停输入流。

rl.resume()

恢复输入流。

rl.clearLine()

清除当前行。

rl.clearScreenDown()

清除当前行到屏幕底部

rl.close()

关闭 Interface 实例。

结语

本文介绍了 npm 包 promise-readline 的使用和 API,相比较原生的 readline 模块,promise-readline 更加方便和易用,可以极大地提高前端开发效率。我相信通过本文的介绍,读者们都可以掌握 promise-readline 的使用方法。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/60057c5281e8991b448ebd40


猜你喜欢

  • npm 包 local-https-dev 使用教程

    在前端开发过程中,我们经常需要在本地运行 HTTPS 协议网站以测试和调试开发的功能。local-https-dev 是一个可方便快捷地搭建本地 HTTPS 环境的 npm 包,本文将介绍如何使用 l...

    3 年前
  • npm 包 biosan-code-control 使用教程

    介绍 biosan-code-control 是一个符合 BIOSAN 样式规范的代码编辑器,是面向前端开发人员的一个 npm 包。使用它可以轻松地创建一个能够编辑固定颜色、格式以及布局的代码块。

    3 年前
  • npm 包 test-popperjs 使用教程

    前言 在前端开发中,我们经常需要使用一些弹出框或者下拉框等外观效果。而实现这些效果时,我们通常会选择使用一些第三方库,如 Bootstrap、Popper.js 等等。

    3 年前
  • npm 包 local-ip-webpack-plugin 使用教程

    我们经常需要在前端开发中获取本地 IP 地址,比如用于调试时查看本机在局域网中的 IP 地址,或者是用于调试手机端页面时,需要在手机浏览器中打开本机的 Web 服务器。

    3 年前
  • npm 包 my-popperjs 使用教程

    前言 在前端开发中,选择一个好的弹出框组件是非常关键的。一款好的弹出框组件可以有效地提高用户体验,提高页面交互性,并使项目开发更加高效便捷。在众多的弹出框组件中,my-popperjs 是一个优秀的弹...

    3 年前
  • npm 包 font-proxima-nova-scss 使用教程

    在前端开发中,字体是非常重要的元素之一。然而,为了保证文档的一致性,我们通常需要使用统一的字体。Font Proxima Nova 是一款非常受欢迎的字体,而 font-proxima-nova-sc...

    3 年前
  • npm 包 node-identity-server 使用教程

    介绍 node-identity-server 是一个基于 Node.js 和 Express 的身份验证服务,它支持 OAuth2、OpenID Connect 等标准协议,并提供了用户管理、角色管...

    3 年前
  • npm 包 rc-dialog-wcast 使用教程

    前言 在前端的开发中,我们经常会需要用到弹窗组件。实现一个简单的弹窗并不难,但是要做到可定制化、易用性强,就需要依靠一些好用的组件库来实现。而 rc-dialog-wcast 就是一个高度可定制化的弹...

    3 年前
  • npm 包 react-rating-star 使用教程

    前言 React 作为一款流行的前端框架,其生态系统也非常丰富。其中,npm 包作为一种常见的功能扩展方式,对于提升前端开发效率和降低维护成本起到了重要作用。本文将介绍一款名为 react-ratin...

    3 年前
  • npm 包 ng2-file-input-bap 使用教程

    在前端开发中,文件上传功能经常被用到。而 Angular 框架中,ng2-file-input-bap 是一个优秀的文件上传组件。它提供了多种方式来配置,可以满足大部分的需求。

    3 年前
  • npm包vue-theme-loader使用教程

    概述 前端经常需要实现多种主题,通常的做法是使用CSS变量,但是这种方式不太友好,手动在CSS中定义所有变量很麻烦。vue-theme-loader可以解决这个问题,使用它可以让你更加方便地创建和切换...

    3 年前
  • npm 包 cerebral-provider-forms 使用教程

    在前端开发中,实现表单交互是必不可少的。而 cerebral-provider-forms 是一个支持表单状态管理的 npm 包,可以让表单操作更加方便、简洁。 本文将详细介绍 cerebral-pr...

    3 年前
  • npm 包 create-reducer-ts 使用教程

    什么是 create-reducer-ts create-reducer-ts 是一个基于 TypeScript 的轻量级 reducer 创造器,它可以帮助我们更加简单而高效的编写 reducer。

    3 年前
  • npm包temporary-rocketlets-ts-definition使用教程

    介绍 temporary-rocketlets-ts-definition是一个npm包,可以帮助前端开发人员轻松生成ts定义文件。在使用Typescript时,定义文件是必不可少的,它们描述了要导入...

    3 年前
  • npm 包 morphic-gui 使用教程

    在前端开发中,使用 npm 包能够大大提高我们的开发效率。本文将介绍一个名为 morphic-gui 的 npm 包的使用教程,希望对您有所帮助。 什么是 morphic-gui? morphic-g...

    3 年前
  • npm 包 redux-structures 使用教程

    前言 在前端开发中使用 redux 是常见的做法,Redux 提供了一种可预测的状态管理模式,适用于大型应用。同时,redux-structures 是一个 npm 包,可以帮助我们更加高效地使用 R...

    3 年前
  • ngx-logarithmic-slider: 使用教程

    前言 在前端开发中,滑动条控件是不可或缺的组件之一。它可以用来改变数值范围、调整音量、选择颜色等等。而 ngx-logarithmic-slider 正是一款功能强大,具备对数级别滑动效果的滑动条控件...

    3 年前
  • npm 包 ran-cli 使用教程

    前言 在前端开发中,我们编写的代码通常需要被打包和构建。为了提高开发效率和代码质量,我们常常会使用一些工具辅助我们完成这些任务。其中,npm 包 ran-cli 就是一个非常实用的工具。

    3 年前
  • npm包@cloudtea/ct-asr使用教程

    前言 语音识别技术正逐渐成为人工智能领域里的新宠。很多公司和开发者开始研究和使用语音识别技术。本篇文章将介绍一种轻便易用的语音识别工具——@cloudtea/ct-asr,它是基于Node.js的np...

    3 年前
  • NPM 包 klg-tracer-model 使用教程

    简介 klg-tracer-model 是一个基于 Node.js 的 NPM 包,它提供了一个易于使用的客户端架构,可让您进行分布式跟踪,以及了解您的应用程序中的所有服务之间的相互作用。

    3 年前

相关推荐

    暂无文章