Angular2路由:如何在<div [innerhtml] =“”元素中使用[routerLink]?=“”ie,=“”linking =“”with =“”innerhtml =“”

时间:2016-04-29 22:41:10

标签: angular angular2-routing

=“”

所以我正在构建一个angular2静态站点模板,主页面用markdown文件编写。

我需要能够使用markdown编写工作链接,而无需刷新页面。

示例页面可能是:

@Component({
    selector: 'sample-page',
    providers: [],
    template: `
    <div innerHtml="{{text | markdown}}"></div>    
    `,
    styleUrls: [],
    directives: [ROUTER_DIRECTIVES],
    pipes: [MarkdownPipe]
})
export class SamplePageComponent {...

markdown文件可能包含

/**
* Insert your markdown between the ticks
*/
export let page_markdown: string = `
## a sample page
[back to home 1](/)
<div>
<a [routerLink]="['Home']">Back to home 2</a>
</div>
`
    ;

但由于某种原因,回到家2没有被渲染,因为angular2没有对<div [innerHTML]内的任何东西进行绑定。

标准降价[back to home 1](/)只是重新加载页面,这不是我想要的。

我的问题有什么办法吗?

提前致谢。

1 个答案:

答案 0 :(得分:4)

不支持。 Angular不会处理添加了[innerHtml]的HTML。您可以使用DynamicComponentLoader以动态方式添加包含在组件中的链接。