1."引入marked
package.json
"dependencies": { "marked": "^0.3.9" } import marked from "marked";
1.修改生成的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" '); }; 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 //使用更为时髦的标点 });
ps:vue实现类似target="_blank"打开新窗口
//href的{}不能少 let {href} = this.$router.resolve({path:'/applySocSecCard'}); window.open(href, '_blank');
总结
以上所述是小编给大家介绍的Vue配置marked链接添加target="_blank"的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!