Как изменить innerHTML путем вычисления выражения angular

Я пытаюсь сделать что-то вроде этого

<div id="{{item.id}}" ng-repeat="item in itemList">
    {{item.innerHTML}}
</div>

item.innerHTML содержит html, который должен туда идти, но поскольку он является частью dom, он заменяется как строка. Есть ли способ просто заменить его innerHTML?

Спасибо!

Ответы

Ответ 1

Вам нужно использовать ngBindHtml:

http://plnkr.co/edit/n1rLzgEZQoa2tJf0qnVZ?p=preview

в контроллере:

$scope.content = "<b>this is bold content</b>";

html:

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

вам понадобится следующий модуль:

http://code.angularjs.org/1.0.3/angular-sanitize.js

Обязательно объявите ngSanitize в качестве зависимости от модуля, например:

var app = angular.module('angularjs-starter', ["ngSanitize"]);