一尘不染

删除ng-bind-html-unsafe后,如何注入HTML?

angularjs

我正在尝试使用$sanitizeprovider和ng-bind-htm-unsafe指令来允许我的控制器将HTML注入DIV。

但是,我无法使其正常工作。

<div ng-bind-html-unsafe="{{preview_data.preview.embed.html}}"></div>

我发现这是因为它已从AngularJS中删除(谢谢)。

但是没有ng-bind-html-unsafe,我得到这个错误:

http://errors.angularjs.org/undefined/$sce/unsafe


阅读 231

收藏
2020-07-04

共1个答案

一尘不染

  1. 您需要确保已加载sanitize.js。例如,从https://ajax.googleapis.com/ajax/libs/angularjs/[LAST_VERSION]/angular-sanitize.min.js加载它
  2. 您需要ngSanitize在您的app 示例中包含模块:var app = angular.module('myApp', ['ngSanitize']);
  3. 您只需要绑定ng-bind-html原始html内容即可。无需在控制器中执行任何其他操作。ngBindHtml指令自动完成解析和转换。(请阅读本How does it work节的内容:$ sce)。因此,在您的情况下<div ng-bind-html="preview_data.preview.embed.html"></div>就可以完成工作。
2020-07-04