我正在尝试让Angular Dart在HTML字符串的标记中显示链接。
首先,我试图将容器的内部HTML设置为HTML字符串,但这没有用,所以我随后尝试使用Dart的DomSanitizationService
类,但这也没有似乎行得通。
到目前为止,我有
飞镖:
class SomeComponent {
final DomSanitizationService sanitizer;
SafeUrl some_url;
SomeComponent(this.sanitizer) {
some_url = this.sanitizer.bypassSecurityTrustUrl('https://www.google.com');
}
String html_string = '''
<a [href]="some_url">Hi</a>
''';
String get Text => html_string;
}
HTML:
<div [innerHTML]="Text"></div>
我遇到的错误是Removing disallowed attribute <A [href]="some_url">
。文字Hi
似乎显示了,但是没有链接了。
答案 0 :(得分:1)
就像您绕过URL渗透处理一样,您也必须绕过HTML渗透处理,也要使用bypassSecurityTrustHtml
返回标记。
https://angular.io/api/platform-browser/DomSanitizer#bypassSecurityTrustHtml