Angular 2:如何将指令应用于净化后的 html/innerhtml

cle*_*fix 5 innerhtml angular2-directives angular angular-dom-sanitizer

我正在开发一个应用程序,我从服务器获取 html 格式的响应。我正在使用DomSanitizer 的bypassSecurityTrustHtml 并将清理后的html 添加到我的组件() 中。

我的问题是响应中的一些元素包含标签来指示可以从该元素构建链接,例如:

<div thisIsActuallyaLink linkParam1="foo" linkParam2="bar">clickHere</div>
Run Code Online (Sandbox Code Playgroud)

我想创建一个应用于innerhtml的指令,但是当显示html时,它不是用我的指令编译的...

如果有人想知道为什么转换 html 不是在服务器端完成:响应在多个应用程序中使用,并且链接必须根据应用程序具有不同的相对 url :-(

Gün*_*uer 4

[innerHTML]="..."这根本不可能。
您可以在运行时编译组件以获取动态 HTML 的组件和指令。

请参阅如何使用/创建动态模板来使用 Angular 2.0 编译动态组件?更多细节。