2016-03-03 3 views
2

У меня есть переменная в области с некоторым содержимым HTML. Я хочу отобразить его как HTML на веб-странице, но в моем случае он отображается как полный текст. Может кто-нибудь мне помочь?Как визуализировать текст в HTML в AngularJS

Это мой код: -

//contoller.js

$scope.message = '<b><i>result has been saved successfully.</i></b>'; 

//demo.html

<p ng-bind="message"></p> 
+2

Зачем вам нужна строка html в контроллере, а не шаблон? – charlietfl

+0

, потому что я хотел показать успешное сообщение, когда пользователь нажимает кнопку «Сохранить», и я хочу, чтобы это сообщение выглядело хорошо. –

+0

Так что заставьте его хорошо выглядеть в шаблоне и передать текст ... это обычный подход. – charlietfl

ответ

5

Вы должны вводить $ ScE услугу в ваш controller или Directive и т.д., и использовать $sce service вроде этого: -

$scope.Message = $sce.trustAsHtml("<b><i>result has been saved successfully.</i></b>"); 

И связывают это в HTML-страницы например;

<p ng-bind-html = "Message"></p> 
+0

, потому что это хорошо сработало –

3

Вы должны обеспечить свое содержание с $ sce, а затем используйте

нг-связывать-HTML директива

документы здесь:

https://docs.angularjs.org/api/ng/directive/ngBindHtml

редактировать

вы можете найти использование sce.trustAsHtml здесь:

https://docs.angularjs.org/api/ng/service/ $ SCE # trustAsHtml

+0

спасибо OctoD .. это тоже отлично работает .. –

+0

Добро пожаловать! Надеюсь, вам понравится ваш угловой опыт! – OctoD

0
<p ng-bind-html="message"></p> 
+1

Действительно? Никаких объяснений? Только одна строка кода ... – Ankh

+0

ng-bind-html требуется дополнительное объяснение? это должно решить проблему –

Смежные вопросы