小编典典

您如何使用 $sce.trustAsHtml(string) 在 Angular 1.2+ 中复制 ng-bind-html-unsafe

all

ng-bind-html-unsafe在 Angular 1.2 中被移除

我正在尝试实现我需要使用的东西ng-bind-html-unsafe。在文档和 github 提交中,他们说:

当绑定到 $sce.trustAsHtml(string) 的结果时,ng-bind-html 提供类似 ng-html-bind-unsafe
的行为(innerHTML 是未经清理的结果)。

你怎么做到这一点?


阅读 63

收藏
2022-06-07

共1个答案

小编典典

那应该是:

<div ng-bind-html="trustedHtml"></div>

加上你的控制器:

$scope.html = '<ul><li>render me please</li></ul>';
$scope.trustedHtml = $sce.trustAsHtml($scope.html);

而不是旧语法,您可以在其中$scope.html直接引用变量:

<div ng-bind-html-unsafe="html"></div>

正如几位评论者指出的那样,$sce必须在控制器中注入,否则会$sce undefined出错。

 var myApp = angular.module('myApp',[]);

 myApp.controller('MyController', ['$sce', function($sce) {
    // ... [your code]
 }]);
2022-06-07