Я использую аккордеон с угловым ui-bootstrap. И я нахожусь в ng-repeat
. В моем заголовке аккордеона я пытаюсь связать с переменной области с html в ней. Я пытаюсь связать html с data-ng-bind-html
и угловым сервисом $sce
. Я также ввел ngSanitize
в мое приложение.Bind html to angle-ui-bootstrap accordion
Но я не получаю результат, который я хочу. Это мой аккордеон заголовок:
<accordion close-others="true">
<accordion-group class="row" data-ng-repeat="content in pageContent" data-ng-if="content.pageId === page.id">
<accordion-heading data-ng-bind-html="trustedHtml(content.columnTitle)" ></accordion-heading>
<!-- rest of content -->
</accordion-group>
</accordion>
В мой контроллер я впрыснуть $sce
и это $scope
метод:
$scope.trustedHtml = function (input) {
return $sce.trustAsHtml(input);
}
Может кто-нибудь помочь мне с этим?
я нахожусь в нг-повтора: я уже настроил код HTML пример выше всего минуту назад – Doek
Вы все еще можете использовать настраиваемую директиву и шаблон. Поместите директиву на тег заголовка аккордеона, передайте имя переменной области действия с директивой, получите значение области действия в директиве и установите element.html на сохраненное значение. Это стилистическая вещь, но я предпочитаю этот путь над остальными, поскольку я хочу, чтобы все манипуляции с DOM были исключены из контроллера, фабрики и т. Д. И только в директивах. Кроме того, поскольку это директива, предназначенная для вас, вам больше не нужно беспокоиться о том, чтобы заставить Angular распознать, что на самом деле предполагается вставить HTML. – tuckerjt07
Это сработало для вас? – tuckerjt07