用angularJS比较多的童鞋经常会遇到通过angularjs显示html,之前我不知道可以自定义filter来实现转义,于是试了很多方法,比如ejs原生方法 <%-content%> 来显示,但是angularJS是不能和ejs语法搅在一起的。angularJS可以用定义过滤器的 方式实现html的转义,非常简单,看代码:
html :
<div ng-repeat="article in articles">
<div class="panel-heading">
<h4><b>{{article.title}}</b></h4>
</div>
<div class="panel-body">
<article id="word-display" ng-bind-html="article.content | trustHtml">
</article>
</div>
</div>js :
var doraApp = angular.module("webApp",[]);
doraApp .filter('trustHtml', function ($sce) {
return function (input) {
return $sce.trustAsHtml(input);
}
});