Marked 是 Markdown 的解析器(parser)和编译器(compiler)。轻量级,为速度而生,无需长时间缓存或阻塞;可用作命令行界面 (CLI) 并在客户端或服务器端 JavaScript 项目中运行。很多独立产品诸如:倾城之链、曼妙句子、玉桃文飨轩,都是采用 Marked 解析 Markdown 为 html,交给浏览器渲染,从而呈现出效果。
Marked 解析(parser) Markdown,对于 <a>
标签,默认是在当前浏览器选项卡中打开;即:target="_self"。如何配置 marked 链接,以添加 target="_blank"?只需采取如下处理方式即可(具体详情可参见:Marked Doc - parse ):
import { marked } from 'marked'
const renderer = new marked.Renderer()
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="noopener" ')
}
marked.setOptions({
renderer,
sanitize: false,
})
export const parse = marked.parse
您可能感兴趣的文章