NPM 包 justo-inquirer 使用教程

阅读时长 6 分钟读完

简介

justo-inquirer 是一个 Node.js 命令行交互工具,可以通过命令行与用户进行交互。它提供了许多常用的问题类型(例如:选择、输入、确认等)和可定制的显示选项,使其成为一个非常有用的工具。

安装

安装它非常简单,只需要在命令行中运行以下命令即可:

用法

首先需要引入 justo-inquirer 模块,然后就可以开始向用户发出问题并等待答案。

使用默认类型的问题

要创建一个使用默认类型的问题,只需调用 ask() 函数并提供问题,就像这样:

输出:

这将发出一个提问:“What is your name?”,然后等待用户输入答案。在接受答案后,它将打印:“Hello, [答案]!”。

有多个选择的问题

justo-inquirer 还可以用于提示用户在几个选项中进行选择。下面的示例演示了如何提示用户选择他们喜欢的编程语言:

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

输出:

在这个例子中,我们传递了一个 options 数组,它包含要显示给用户的选项,然后使用 list 类型指定了问题类型。

用户自定义交互

此外,用户还可以通过键入文本或自定义交互回答问题。下面的示例演示了要求用户输入他们的邮箱地址,并使用自定义交互打印出用户选择的选项:

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

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

输出:

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

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

此示例中,我们使用了 input 类型来问一个简单的问题,然后使用 checkbox 类型来让用户从多个选项中进行选择。

结论

通过 justo-inquirer,我们可以创建一个简单而强大的命令行界面,与用户进行交互。此外,还有许多其他问题类型可以定制,例如:确认、多个选择、输入等。无论是开发一个命令行工具还是制作用户友好的命令行工具,都可以使用 это有用的npm包。

示例代码

完整的代码如下:

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

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

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

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

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

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

纠错
反馈