如何配置 marked 链接,以添加 target=”_blank”?
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
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布,任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站。本站所有源码与软件均为原作者提供,仅供学习和研究使用。如您对本站的相关版权有任何异议,或者认为侵犯了您的合法权益,请及时通知我们处理。