npm 包 qoa 使用教程

阅读时长 4 分钟读完

介绍

qoa 是一个命令行交互式工具,可用于收集用户输入的信息。它可以为 CLI(命令行界面)创建交互式提示,支持自定义样式和校验器,易于使用且具有良好的可维护性。

安装

qoa 是一个基于 Node.jsnpm 包,因此在使用之前,您需要先确保在本地安装了 Node.js。在 Node.js 环境中,使用以下命令安装 qoa

使用

qoa 支持多种类型的问题,包括行选择、单选、多选、数字输入等。以下是一个简单的示例,它将提示用户输入名称和年龄,并验证年龄是否是数字:

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

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

  --------------------
-----
展开代码

在运行此代码时,将在终端中看到提示消息,询问用户名称和年龄。用户输入答案,然后 qoa 将返回一个包含答案的对象。

API

prompt(questions)

这是 qoa 的核心方法,用于提示用户回答一组或多组问题,以收集他们的输入内容。questions 参数是一个对象数组,每个对象包含以下属性:

  • type - 表示问题的类型。可选项目包括 'input''confirm''list''rawlist''expand''checkbox''editor'
  • query - 一个字符串,表示此问题的文本。例如,'请输入您的名称:'
  • handle - 问题的唯一标识符。提供一个这样的标识符,使您能够在答案对象中引用它。
  • choices - 仅在 listrawlistcheckbox 问题类型中使用。这是一个包含供用户选择的可选项的数组。

Styles

您可以使用 qoa 提供的样式对象来自定义您的提示消息的外观。您可以使用以下 styles 属性:

  • prefix - string 类型。在提示消息之前对它进行前缀,例如 >
  • separator - string 类型。用于分隔问题和用户输入的分隔符。
  • suffix - string 类型。在提示消息之后对它进行后缀,例如 :
  • error - string 类型。当用户输入无效值时在错误消息中使用的CSS颜色。示例:'\x1b[31m' 通常用于显示红色文本。
  • input - string 类型。输入值的CSS颜色。示例:'\x1b[32m' 通常用于显示绿色文本。

下面是一个示例:

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

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

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

  --------------------
-----
展开代码

结论

qoa 提供了一个简单且易于使用的 Node.js 库,可用于创建命令行交互接口(CLI)的提示消息。它提供了多种设置,包括各种问题类型和样式自定义。使用 qoa,您可以更轻松地编写高质量的 CLI 工具,为您的用户提供更好的用户体验。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/139630