HTML-теги рассматриваются как обычный текст при использовании угловых директив

0

например:

функция foo() расположенная в моем контроллере:

              $scope.getOffers = function(){
                 var txt1="aaaa"+"<br>"+"bbbb";
                  $scope.newData = txt1;
              };

и мой html:

                <div class="help-block" ng-show="newData ">{{ offers }}</div> 

и когда я вызвал foo() текст, который появился, был: aaaa<br>bbbb вместо:

        aaaa
        bbbb

(Я уже пытался вставить \n в свой текст...) Что мне не хватает? и как я могу исправить проблему?

благодарю!

  • 0
    Вы можете использовать помощники, такие как .trustAsHtml() или ng-bind-html чтобы помочь с этим, но если вы пытаетесь структурировать свои переменные, чтобы они в первую очередь .trustAsHtml() HTML, вы, вероятно, не полностью охватили угловую парадигму.
  • 0
    попробуйте с помощью ng-bind-html-unsafe, вы можете проверить эту скрипку jsfiddle.net/VFVMv

2 ответа

1
Лучший ответ

И не забудьте доверять html. https://docs.angularjs.org/api/ng/service/$sce

См. Этот плункер http://embed.plnkr.co/HAKJ2iknZeeEOsgukoGd/

  • 0
    Спасибо! сочетание 2 ответов идеально! Подскажите, пожалуйста, что такое `$ sce`?
1

вам нужно использовать ng-bind-html для этого

 <div class="help-block" ng-show="newData " ng-bind-html="offers"></div> 

Ещё вопросы

Сообщество Overcoder
Наверх
Меню