介绍
在前端开发中,我们常常需要使用 JSON Schema 描述 JSON 数据结构。而将 JSON Schema 文档转换为 Markdown 格式是一种常见的需求,这样可以方便地将数据结构文档嵌入到代码注释中、发布到系统文档中等。本文将介绍一个适用于将 JSON Schema 转换为 Markdown 的 npm 包:jsonschema-2md-withheaders
。该包具有较高的定制性和易用性,可自动为解析出来的 Markdown 标题添加序号,从而生成结构清晰的文档。
安装
npm install jsonschema-2md-withheaders
用法
jsonschema-2md-withheaders
的基本用法如下:
const JsonSchema2Md = require('jsonschema-2md-withheaders'); const schema = { /* 此处为 JSON Schema 定义 */ }; const config = { /* 解析配置 */ }; const markdown = JsonSchema2Md.headerize(JsonSchema2Md.fromString(schema, config), config);
其中,JsonSchema2Md
是一个静态类,提供了两个方法 fromString
和 headerize
。
fromString(schema: string, config: object = {})
方法用于将一个 JSON Schema 内容字符串转换为 Markdown,返回字符串类型的 Markdown。schema
参数为 JSON Schema 字符串,config
中包含了一些解析配置,具体可查看官方文档。
headerize(markdown: string, config: object = {})
方法则用于为 Markdown 添加序号,返回新的字符串类型的 Markdown。markdown
参数为普通的 Markdown 文档,config
中仍然包含了解析配置。
示例
以下是一个简单的示例,展示了如何将一个 JSON Schema 转换为 Markdown,并为生成的 Markdown 添加标题序号。
-- -------------------- ---- ------- ----- ------------- - -------------------------------------- ----- ------ - - ---------- ------------------------------------------ ------ ----------------------------------------- -------- ---------- -------------- -- ------- ---- ------ --------- ------- --------- ------------- - ------------ - -------------- ---- ------ ---------- --- - --------- ------- --------- -- -------------- - -------------- ----- -- --- --------- ------- -------- -- --------------- - -------------- ------ -- --- --------- ------- -------- - -- ----------- ------------- -------------- --------------- -- ----- ------ - - ------------- --- - -- ----- -------- - ------------------------------------------------------------------------ -------- -------- ----------------------
运行该代码会在控制台输出以下 Markdown 内容:
-- -------------------- ---- ------- -- -- ------- - ------- ---- ------ ------- - -------- - ---- - ----------- - - --- - --- - --- - - --- --------- - --------- - --- ------ ---------- --- - ------- - - --- ----------- - -------- - ---- -- --- ------- - - --- ------------ - -------- - ----- -- --- ------- -
总结
通过 jsonschema-2md-withheaders
这个 npm 包,我们可以很方便地将 JSON Schema 转换为带有标题序号的 Markdown 格式的文档。这样的文档可以极大地方便我们将数据结构嵌入到代码和系统文档中,提升代码的可读性和维护性。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60065f82238a385564ab6baf