npm 包 envstrict 使用教程

阅读时长 5 分钟读完

在前端的开发过程中,我们经常需要使用环境变量来配置我们的应用程序。然而,由于环境变量的随意性,很容易导致应用程序出现各种不可预知的行为。为了规范环境变量的使用,我们可以使用 npm 包 envstrict。

简介

envstrict 是一款用于检查环境变量的 npm 包,它可以帮助我们在应用程序中使用环境变量时避免出现错误,提高代码的可读性和可维护性。

envstrict 提供了一些验证方法,可以根据我们的需求检查环境变量的值是否符合预期的格式或内容。如果环境变量的值不符合预期,envstrict 将会抛出错误并提供有用的错误信息。另外,envstrict 还可以帮助我们预设默认值,以便在环境变量未设置时,使用默认值来避免出现错误。

安装

我们可以使用 npm 安装 envstrict:

使用

我们可以使用 require 引入 envstrict:

上述代码中,envstrict 默认会检查所有环境变量是否已设置,如果有环境变量未设置,将会抛出错误。

我们可以设置默认环境变量:

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

上述代码中,我们设置了一个名为 NODE_ENV 的环境变量,该环境变量是必须设置的,并且只允许使用 development、production、test 三个值中的一个作为其值。如果 NODE_ENV 环境变量未设置,默认使用 development 作为其值。

检查值类型

我们可以使用 type 方法来检查环境变量的值是否符合指定类型。下面是一个示例代码,该代码检查了 PORT 环境变量的值是否为数字类型:

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

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

上述代码中,我们使用了 validate 属性指定了值的类型为 number 类型。如果 PORT 环境变量未设置,将使用默认值 3000。

检查正则表达式

我们可以使用 regex 方法来检查环境变量的值是否符合指定的正则表达式。下面是一个示例代码,该代码检查了 SECRET_KEY 环境变量是否符合指定的正则表达式:

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

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

上述代码中,我们使用了 validate 属性指定了值需要符合指定的正则表达式。如果 SECRET_KEY 环境变量未设置或未符合正则表达式,将会抛出错误。

检查值列表

我们可以使用 enum 方法来检查环境变量的值是否包含在指定的列表中。下面是一个示例代码,该代码检查了 NODE_ENV 是否属于指定列表中:

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

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

上述代码中,我们使用了 validate 属性指定了值需要包含在指定的列表中。如果 NODE_ENV 环境变量未设置或未在指定的列表中,将会抛出错误。

检查自定义条件

我们还可以使用自定义的条件检查环境变量的值是否符合预期。下面是一个示例代码,该代码检查了 DATABASE_URL 是否符合某些自定义条件:

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

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

上述代码中,我们使用了 validate 属性指定了一个函数,该函数用于检查环境变量的值是否符合自定义条件。如果 DATABASE_URL 环境变量未设置或未符合条件,将会抛出错误。

总结

envstrict 是一个非常有用的 npm 包,它可以帮助我们规范化环境变量的使用,使我们的应用程序更加健壮、可读性和可维护性更好。使用 envstrict 可以避免环境变量使用过程中随意性导致的各种错误,同时提高代码的可维护性和可读性。

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

纠错
反馈