Vue配置marked链接添加targetblank

28次阅读

共计 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 // 使用更为时髦的标点
});

正文完
 0

Vue配置marked链接添加targetblank

28次阅读

共计 773 个字符,预计需要花费 2 分钟才能阅读完成。

  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"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 // 使用更为时髦的标点
});

正文完
 0