我有一个使用渲染器的标记管道。 在我的应用程序上,用户可以发布我的应用程序的链接,我想将href更改为[routerLink]
传入的网址字符串为http://localhost:4200/areas/fun/629661722
继承我当前无效的代码
export class MarkedPipe implements PipeTransform {
renderer = new marked.Renderer();
constructor() {
this.renderer.link = function( href, title, text ) {
let url = '<a target="_blank" href="' + href;
console.log(href)
if (href.indexOf('localhost:4200') !== -1) {
console.log(href.substring(21, href.length))
url = '<a [routerLink]="[\'' + href.substring(21, href.length) + '\']"';
console.log(url)
}
return url + ' title="' + title + '">' + text + '</a>';
};
marked.setOptions({
renderer: this.renderer,
sanitize: true
});
}
transform(value: string): string {
return '<span class="markdown">' + marked(value || '') + '</span>';
}
}
html代码:
<span class="mainText" [innerHTML]="post?.text | marked"></span>