共计 777 个字符,预计需要花费 2 分钟才能阅读完成。
1. 引入 marked
package.json
"dependencies": {"marked": "^0.3.9"}
import marked from "marked";
2. 修改生成的 HTML 的方法
const renderer = new marked.Renderer(); | |
//https://github.com/markedjs/marked/issues/655#issuecomment-383226346 | |
const linkRenderer = renderer.link; | |
renderer.link = (href, title, text) => {const html = linkRenderer.call(renderer, href, title, text); | |
return html.replace(/^<a /, '<a target="_blank"rel="nofollow" '); | |
}; | |
const html = marked(markdown, { renderer}); |
Tips:marked 参数配置
const renderer = new marked.Renderer(); | |
// 基本设置 | |
marked.setOptions({ | |
renderer: renderer, | |
gfm: true, // 允许 Git Hub 标准的 markdown. | |
tables: true, // 允许支持表格语法(该选项要求 gfm 为 true)breaks: true, // 允许回车换行(该选项要求 gfm 为 true)pedantic: false, // 不纠正原始模型任何的不良行为和错误(默认为 false)sanitize: false, // 对输出进行过滤(清理),将忽略任何已经输入的 html 代码(标签)smartLists: true, // 使用比原生 markdown 更时髦的列表 | |
smartypants: false // 使用更为时髦的标点 | |
}); |
正文完