AngularJS:将HTML插入视图

前端之家收集整理的这篇文章主要介绍了AngularJS:将HTML插入视图前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
是否可以在Angular控制器中创建一个HTML片段,并在视图中显示此HTML?

这来自于将不一致的JSON blob转换为id:value对的嵌套列表的要求。因此,HTML在控制器中创建,我现在正在寻找显示它。

我已经创建了一个模型属性,但是不能渲染这个视图中没有它只打印的HTML。

更新

似乎问题产生于角色渲染创建的HTML作为一个字符串在引号内。将试图找到一个方法围绕这个。

示例控制器:

var SomeController = function () {

    this.customHtml = '<ul><li>render me please</li></ul>';
}

示例视图:

<div ng:bind="customHtml"></div>

给予:

<div>
    "<ul><li>render me please</li></ul>"
</div>
对于Angular 1.x,在HTML中使用ng-bind-html:
<div ng-bind-html="thisCanBeusedInsideNgBindHtml"></div>

此时,您将尝试在安全上下文错误中使用不安全值,因此您需要使用ngSanitize$sce解决此问题。

$ sce

在控制器中使用$ sce.trustAsHtml()来转换html字符串。

$scope.thisCanBeusedInsideNgBindHtml = $sce.trustAsHtml(someHtmlVar);

ngSanitize

有2个步骤:

>包括angular-sanitize.min.js资源,例如:

>在js文件(控制器或通常是app.js)中,包括ngSanitize,例如:angular.module(‘myApp’,[‘myApp.filters’,’myApp.services’,’myApp.directives’,’ngSanitize’])

猜你在找的Angularjs相关文章