npm 包 minimist 使用教程

阅读时长 4 分钟读完

简介

minimist 是一个轻量级的命令行参数解析工具,它可以帮助我们在 Node.js 应用中解析命令行参数。使用 minimist 可以让我们在代码中更方便地获取和处理命令行选项和参数。

安装

使用 npm 在终端中安装 minimist:

基本使用

以下是 minimist 的基本使用方法:

在上面的代码中,process.argv.slice(2) 会返回从第三个元素到最后一个元素的数组,即除了 Node.js 运行时路径和脚本路径之外的所有命令行参数。然后 minimist() 函数会将这些参数解析为一个对象并返回。

例如,假设我们在终端输入以下命令:

则上述代码输出的结果将是以下内容:

其中 _ 键是一个数组,存储了所有未被解析的命令行参数。其余的键值对则代表解析成功的命令行选项和参数。

高级使用

除了基本的命令行参数解析外,minimist 还提供了一些有用的高级功能。下面是其中一些示例:

设置选项别名

使用 minimist 可以设置命令行选项的别名来提高代码的可读性。例如,我们可以为 --name 选项设置别名 -n,并将其解析为同一个键值对:

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

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

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

现在如果我们运行以下命令:

则上述代码输出的结果将和之前一样:

设置选项默认值

如果你想要在命令行选项没有被指定时给它一个默认值,你可以在解析命令行参数时设置选项的默认值。例如,我们可以为 --count 选项设置默认值为 1

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

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

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

现在如果我们运行以下命令:

则上述代码输出的结果将包含 count 键并且值为 1

处理未知选项

如果你希望程序在遇到未知的命令行选项时抛出错误,可以将 unknown 选项设置为一个回调函数。例如:

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

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

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

现在如果我们运行以下命令:

则上述代码会抛出一个包含错误消息的异常:

自定义选项类型

如果你需要解析一些非字符串类型的命令行参数,例如数字或布尔值等,可以通过自定义选项类型来实现。例如,我们可以解析一个整数类型的选项 --count

纠错
反馈