介绍
nk-md 是一个基于 Node.js 的 Markdown 解析工具,可以让你将 Markdown 格式的文本转换为 HTML 代码。它提供了一系列的 API,方便你使用自定义的特性和扩展功能。
安装 nk-md
使用 npm 安装 nk-md:
npm install nk-md --save
安装完成后,你可以在你的项目中使用 nk-md。
使用 nk-md
基本使用
-- -------------------- ---- ------- ----- -------- - ----------------- ----- -- - --- ----------- ----- ------------ - - - --- -- --- --- --- - --- - --- - --- ---------------- ------------------ --------- ------ -- ----- ---- - ------------------------ ------------------
将会输出以下内容:
-- -------------------- ---- ------- ------------ ------------ ------------ ---- ------------ ------------ ------------ ----- ---------- ------------------------------------------ ----------------------
使用 nk-md 只需要创建一个 Markdown
实例,并使用 render
方法将 Markdown 格式的文本转换为 HTML 代码。你也可以添加一些自定义的特性和扩展功能,后面会讲到。
使用默认配置
尽管 nk-md 提供了许多自定义的配置项,但是在大多数情况下,你可以直接使用默认配置,无需进行任何配置:
-- -------------------- ---- ------- ----- -------- - ----------------- ----- -- - --- ------------- ----- ------------ - -- -------- --------- ----- ---- - ------------------------ ------------------
自定义配置
在 Markdown
构造函数中,你可以传递一个配置对象,用来配置 Markdown 实例的行为。
-- -------------------- ---- ------- ----- -------- - ----------------- ----- -- - --- ---------- ---------- -------- ------ ----- - -- ------ -- ----------- ----- --- ----- ------------ - - - -- - --- - --- -- ----- ---- - ------------------------ ------------------
配置项说明:
highlight
:自定义高亮器,可以使用 highlight.js 等库实现。smartLists
:智能列表,可以自动识别有序列表和无序列表。例如,- 无序列表
或1. 有序列表
。smartypants
:智能引号和破折号转换。例如,--
转换为–
,"foo"
转换为“foo”
。tables
:表格支持。例如:| Name | Age | Gender | | ---- | --- | ------ | | Tom | 20 | Male | | Lily | 18 | Female |
emoji
:Emoji 支持。例如,:smile:
转换为 😄。footer
:页脚支持。footnote
:脚注支持。例如,[^1]
转换为脚注。
使用 nk-md 扩展
除了可以自定义配置,nk-md 还提供了许多扩展功能,可以在 Markdown 编辑器中使用。
以下是一些常用扩展:
Math
用于在 Markdown 中渲染数学公式。
-- -------------------- ---- ------- ----- -------- - ----------------- ----- ---- - ----------------------- ----- -- - --- ---------- ----------- ---- -------- --- ----- ------------ - - - -- -- ---- - -------------------------- -------- -- -- -- ----- ---- - ------------------------ ------------------
Task List
用于在 Markdown 中添加任务清单。
-- -------------------- ---- ------- ----- -------- - ----------------- ----- -------- - ---------------------------- ----- -- - --- ---------- ----------- ---- ------------ --- ----- ------------ - - - - - --- - --- --- - - - --- -- ----- ---- - ------------------------ ------------------
Mermaid
用于在 Markdown 中绘制流程图、时序图等。
-- -------------------- ---- ------- ----- -------- - ----------------- ----- ------- - -------------------------- ----- -- - --- ---------- ----------- ---- ----------- --- ----- ------------ - - - -- ------------- ----- --- ------ ------ ------ ------ ------ -- ----- ---- - ------------------------ ------------------
在使用 Mermaid 时,需要在浏览器中引入 Mermaid 库:
<script src="//cdn.jsdelivr.net/npm/mermaid/dist/mermaid.min.js"></script>
示例代码
完整代码:
-- -------------------- ---- ------- ----- -------- - ----------------- ----- ---- - ----------------------- ----- -------- - ---------------------------- ----- ------- - -------------------------- ----- -- - --- ---------- ---------- -------- ------ ----- - ------ -------------------- ------------ -- ----------- ----- ----------- ---- ------- --- ----------- --- ---------- --- ----- ------------ - - - -------- ------- - --- - --- - --- -- ---- - -------------------------- -------- -- -- - - - --- - --- --- - - - --- ------------- ----- --- ------ ------ ------ ------ ------ -- ----- ---- - ------------------------ ------------------
你可以在这里 http://jsfiddle.net/fawno/3ajmc1qn/ 查看示例代码的效果。
总结
通过本文,你已经了解了如何使用 nk-md,以及 nk-md 的一些特性和扩展,希望这能对你在前端开发中使用 Markdown 有所帮助。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6005519b81e8991b448cef56