npm 包 indicative-rules 使用教程

阅读时长 6 分钟读完

简介

indicative-rules 是一个基于 Node.js 的 npm 包,它提供了许多规则和验证器,可以帮助我们在前端开发中更加方便的进行数据验证。

安装

要开始使用 indicative-rules,我们需要先安装它:

基础示例

下面是 indicative-rules 的一个基本示例:

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

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

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

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

这个示例演示了如何使用 indicative-rules 对数据进行验证。我们将一个包含 name、email、age 和 gender 的对象传递给 validate 函数,同时传递了一个规则对象,命令数据满足所有规则。

如果验证通过,则 resolve Promise,控制台将输出 'Validation passed'。否则,将触发 catch 语句并输出错误信息。

规则

indicative-rules 支持许多内置规则,以下是一些常用规则的示例:

required

当值不存在或为空(或字符串 trim() 后为空)时,该规则将导致验证失败。

string

该规则要求该值是一个字符串。

integer

该规则要求该值是一个整数。

email

该规则要求该值是一个有效的电子邮件地址。

in

该规则要求该值是在给定值列表中的一个。

min

该规则要求该值的字符串长度至少为指定的最小值。

max

该规则要求该值的字符串长度最大为指定的最大值。

以上规则只是 indicative-rules 支持的规则的一小部分。这里还有更多规则供您探索。

组合规则

indicative-rules 允许我们组合规则以验证数据。

以下是一些常见的组合规则示例:

required_if

当给定字段的值为指定值时,此规则将要求另一个字段必填。

confirmed

该规则要求此字段的值与指定的另一个字段的值相同。

different

该规则要求指定的两个字段的值不同。

更多示例,请查看 indicative-rules 文档。

自定义规则

如果您需要更具体的验证规则,可以使用 indicative-rules 提供的 extend 方法来创建自定义规则。

下面是一个自定义规则的示例,它验证身份证号码是否有效:

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

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

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

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

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

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

这将创建一个新的规则 'id_number',它将验证一个值是否符合中国公民身份证号码格式。提示信息为 'Invalid ID number format'。

您可以使用这个新规则来验证身份证号码是否有效:

现在,如果您将一个身份证号码字符串传递给 validate 函数,并将 'id_number' 添加为规则之一,则对其进行验证。如果其无效,则会显示提示消息。

总结

indicative-rules 提供了许多有用的内置规则,可以让我们更轻松地进行数据验证。通过组合规则,我们可以构建非常复杂的验证规则。如果标准的规则不足以满足您的需求,您可以使用 extend 方法来创建自定义验证规则。

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