前言
在前端开发中,我们经常需要将 Markdown 文本转换成 HTML 格式。remark-github 是一个基于 remark 的插件,可以方便地将 Markdown 转换成 GitHub 风格的 HTML 格式。
本文将介绍如何使用 remark-github 进行 Markdown 转换,并提供一些示例代码和实际应用场景。
安装
使用 npm 进行安装:
npm install remark-github
使用
首先,我们需要创建一个 remark 实例并加载 remark-github 插件:
const remark = require('remark'); const remarkGithub = require('remark-github'); const processor = remark().use(remarkGithub);
接着,我们可以使用 process
方法将 Markdown 文本转换成 HTML:
const markdownText = '# Hello, World!'; const htmlText = processor.processSync(markdownText).toString(); console.log(htmlText); // Output: <h1>Hello, World!</h1>
在这个例子中,我们将 # Hello, World!
转换成了 <h1>
标签。
指南
支持的语法
remark-github 支持大部分 GitHub Flavored Markdown 语法,包括:
- 任务列表
- 表格
- 删除线
- 自动链接
- 用户名 @mentions
- 问题引用 #refs
- Emoji
选项设置
remark-github 提供了一些选项来控制输出格式。我们可以通过在 use
方法中传递一个对象来设置选项:
const processor = remark().use(remarkGithub, { repository: 'my/repo', enableRepoLink: true, });
下表列出了可用选项及其默认值:
选项名称 | 默认值 | 描述 |
---|---|---|
repository |
空 | GitHub 仓库的名称,例如 my/repo 。如果设置,则会将所有的问题引用和提交链接到这个仓库。 |
enableUserLink |
true |
是否要自动将用户名转换成链接。 |
enableCommitLink |
true |
是否要自动将提交 SHA 转换成链接。 |
enableRepoLink |
false |
是否要为仓库创建一个链接。 |
emoji |
{ ... } |
自定义 Emoji 的字典。 |
handlers |
{ ... } |
自定义处理器的集合。 |
示例代码
以下是一些示例代码,展示了 remark-github 的功能:
任务列表
- [x] 已完成 - [ ] 未完成
<ul> <li><input type="checkbox" disabled checked> 已完成</li> <li><input type="checkbox" disabled> 未完成</li> </ul>
表格
| 姓名 | 年龄 | | --- | --- | | 张三 | 20 | | 李四 | 30 |
-- -------------------- ---- ------- ------- ------- ---- ----------- ----------- ----- -------- ------- ---- ----------- ----------- ----- ---- ----------- ----------- ----- -------- --------
删除线
~~这是被删除的文字~~
<del>这是被删除的文字</del>
自动链接
https://example.com/
<p><a href="https://example.com/">https://example.com/</a></p>
用户名 @mentions
@octocat
<p><a href="https://github.com/octocat">@octocat</a></p>
问题引用
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/45380