npm 包 @apidevtools/json-schema-ref-parser 使用教程

阅读时长 5 分钟读完

简介

@apidevtools/json-schema-ref-parser 是一个能够解析 JSON SCHEMA 并将其引用的其他文件合并到同一对象的 npm 包。它是 JSON SCHEMA 工具包中比较完整和灵活的解析器之一,同时兼容 IE 11。

安装

在命令行中执行以下命令即可安装:

使用

假设有一个名为 test.json 的 JSON SCHEMA 文件,在脚本中使用该解析器进行合并引用文件后,可以这样使用:

使用 await 可以将解析过程异步执行。在解析完成之后,mySchema 就是一个复合后的 JSON SCHEMA 文件。

处理引用

使用 @apidevtools/json-schema-ref-parser 对 JSON SCHEMA 进行解析时,其包含的 $ref 引用将被自动处理。例如,对以下文件进行解析:

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

那么 person.json 文件也将被自动解析并合并到相应位置以便于后续使用。

给引用文件传递参数

有时候 JSONSCHEMA 中的引用在传递时需要提供一些参数。使用该解析器可以通过在 JSON SCHEMA 中自定义预留字段的方式来传递这些参数。例如:

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

其中 "x-codemirror-mode" 是预留字段,它将作为一个参数传递给被引用的文件。

示例代码

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

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

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

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

总结

@apidevtools/json-schema-ref-parser 提供了一种便捷的 JSON SCHEMA 解析方案,非常适用于需要将多个 JSON SCHEMA 进行合并的应用场景。在实际开发过程中,它为前端工程师提供了更加简便的方案来解析并处理 JSON SCHEMA 文件,从而提高代码的可维护性和规范性,也为大型项目中的代码分析和重构提供了必要的工具支持。

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

纠错
反馈