Skip to content

enquirer

enquirer 是什么?

  • enquirer 是一个用于创建交互式命令行界面(CLI)的 JavaScript 工具包。它提供了一组简单易用的 API,用于与用户进行命令行交互,接收用户的输入和选择,并根据用户的响应执行相应的操作。

enquirer 的功能和特点

enquirer 提供了丰富的交互式提示类型和选项,使得开发者能够轻松地创建各种交互式命令行界面。主要功能和特点:

  • 多种交互式提示类型:enquirer 提供了多种交互式提示类型,包括单选、多选、输入框、确认等,以满足不同的用户交互需求。
  • 定制化选项:开发者可以通过配置选项来定制交互式提示的外观和行为,包括提示消息、选项列表、默认值、验证规则等。
  • 异步操作支持:enquirer 支持异步操作,可以在用户输入或选择时执行异步操作,例如从数据库中获取数据或发送网络请求。
  • 事件驱动的编程模型:enquirer 使用事件驱动的编程模型,开发者可以监听各种事件,如用户提交、取消等,以执行相应的逻辑。
  • 丰富的扩展插件:enquirer 提供了丰富的插件扩展机制,开发者可以使用现有插件或编写自定义插件来扩展和定制 enquirer 的功能。

示例:

javascript
const enquirer = require("enquirer");

enquirer
  .prompt([
    {
      type: "input",
      name: "name",
      message: "请输入您的姓名:",
    },
    {
      type: "list",
      name: "language",
      message: "请选择您喜欢的编程语言:",
      choices: ["JavaScript", "Python", "Java", "Go", "Ruby"],
    },
  ])
  .then((answers) => {
    console.log("您的姓名是:", answers.name);
    console.log("您喜欢的编程语言是:", answers.language);
  });

enquirer

所有 API

提示类型API 接口描述
AutoComplete PromptAutoCompletePrompt自动完成提示类型的 API 接口
BasicAuth PromptBasicAuthPrompt基本身份验证提示类型的 API 接口
Confirm PromptConfirmPrompt确认提示类型的 API 接口
Form PromptFormPrompt表单提示类型的 API 接口
Input PromptInputPrompt输入提示类型的 API 接口
Invisible PromptInvisiblePrompt隐藏提示类型的 API 接口
List PromptListPrompt列表提示类型的 API 接口
MultiSelect PromptMultiSelectPrompt多选提示类型的 API 接口
Numeral PromptNumeralPrompt数字提示类型的 API 接口
Password PromptPasswordPrompt密码提示类型的 API 接口
Quiz PromptQuizPrompt测验提示类型的 API 接口
Survey PromptSurveyPrompt调查提示类型的 API 接口
Scale PromptScalePrompt刻度提示类型的 API 接口
Select PromptSelectPrompt选择提示类型的 API 接口
Sort PromptSortPrompt排序提示类型的 API 接口
Snippet PromptSnippetPrompt代码片段提示类型的 API 接口
Toggle PromptTogglePrompt切换提示类型的 API 接口

和 inquirer 对比

特点enquirerinquirer
API 设计现代化、灵活传统、较为简单
异步处理支持,注重异步操作和事件处理支持,但相对较简单
定制化能力提供丰富的定制选项和插件扩展一定程度的定制化能力
社区支持和生态系统相对较小,但在不断发展壮大庞大的社区支持和丰富的插件生态系统

参考文献

Released under the MIT License.