解码传递给Angular表达式的字符串中包含的HTML的最佳方式是什么?
例:
如果我有一个从服务器返回的字符串,如下所示:
var some_val = "Hello <strong>World</strong>!"
我如何使它呈现HTML而不是显示为文本?
<!-- Renders to Hello <strong>World</strong>! --> <span>{{ some_val }}</span>
更新:这是中继器中的实际用例:
作品(未评级)
<div ng-repeat="category in some_list"> <p>{{ category.name }}</p> <p ng-repeat="bullet in category.bullets">{{ bullet.desc }}</p> </div>
根本不工作
<div ng-repeat="category in some_list"> <p ng-bind-html="category.name"></p> <p ng-repeat="bullet in category.bullets" ng-bind-html="bullet.desc"></p> </div>
如
here,in the docs所述:
原文链接:https://www.f2er.com/angularjs/145031.html<span ng-bind-html="some_val"></span>
记住some_val必须是一个角度模型(基本上,一个$ scope.some_val必须存在于应用程序的某个地方)
编辑:
我应该澄清一下:ng-bind-html是ngSanitize模块中的一个服务,它不包含在angularJS内核中。 ng-bind-html-unsafe是核心ng模块的一部分,但它包括您提供它但不进行清理的字符串(参见the ngBindHtmlUnsafe docs中的示例)。
如果你想/需要使用ngBindHtml,你需要包括ngSanitize – available here