我已将角度版本从1.0.8升级到1.4.0。
我使用ng-bind-html-unsafe="value | noHTML | newlines"
来包裹字符串。自新版本以来,这不起作用。
我尝试使用以下解决方案,但仍无效。
app.filter('unsafe', function($sce) { return $sce.trustAsHtml; });
和
ng-bind-html-unsafe="value | unsafe | noHTML | newlines"
答案 0 :(得分:2)
由于Angular 1.2.X ng-bind-html-unsafe
已被弃用,请使用ng-bind-html
ng-bind-html="value | unsafe | noHTML | newlines"
答案 1 :(得分:1)
谢谢@Pankaj Parkar:
我现在解决了,我需要过滤所有。即。{,to_trusted
,noHTML
和newlines
。而且我们还需要从$sce.getTrustedHtml(object)
.filter('to_trusted', ['$sce', function($sce){
return function(text) {
return $sce.trustAsHtml(text);
}
}]).filter('noHTML', ['$sce', function($sce){
return function(text) {
var str = $sce.getTrustedHtml(text);
str = str
.replace(/&/g, '&')
.replace(/>/g, '>')
.replace(/</g, '<');
return $sce.trustAsHtml(str);
}
}]).filter('newlines', ['$sce', function($sce){
return function(text) {
var str = $sce.getTrustedHtml(text);
str = str.replace(/\n/g, '<br/>');
return $sce.trustAsHtml(str);
}
}])
和
ng-bind-html="value| to_trusted | noHTML | newlines"