如何将角度数据模型显示为HTML?

时间:2015-09-25 20:36:15

标签: javascript angularjs

我有一个需要转换或显示为html的数据模型。现在它只是显示为文本。

HTML

<div ng-repeat="item in ornamentFigures" class="ornament-item">
    <label for="ornament-{{item.id}}">{{item.svg}}</label>
    <input type="radio" id="ornament-{{item.id}}" name="ornament-radio" />
</div>

控制器

$scope.ornamentFigures = ornamentFigures.ornamentFigures;

服务

MyApp.service('ornamentFigures', function(){

    this.ornamentFigures = [
        {id:'03', name:'wit', svg:'<svg></svg>'},
        {id:'03', name:'wit', svg:'<svg></svg>'},
        {id:'03', name:'wit', svg:'<svg></svg>'},
    ];

    return this;
});

1 个答案:

答案 0 :(得分:2)

您在寻找ng-bind-html吗?

替换:

<label for="ornament-{{item.id}}">{{item.svg}}</label>

使用:

<label for="ornament-{{item.id}}" ng-bind-html="item.svg"></label>

还在您的模块中加入ngSanitize并添加&#34; angular-sanitize.js&#34;在您的应用程序中按the documentation

不是按原样绑定数据,而是呈现为html。请记住,这对安全有影响。如果可以,您可能想尝试不同的方式。