Angular JS: Como exibir uma variável String em HTML

shape
shape
shape
shape
shape
shape
shape
shape

Antes da versão 1.2 do Angular JS era possível utilizar a seguinte diretiva:

<p ng-bind-html-unsafe="chamado.descricao"></p>

Porém esta diretiva foi removida nas versões posteriores por questões de segurança.

Como exibir uma variável em HTML sem escapar as tags ?

1 – Em seu Controller passe a variável $scope e $sce.

var MeuCtrl = function($scope, $sce) {

}

2 – Criaremos uma função que será usada na View para permitir que uma String seja exibida em HTML:

var MeuCtrl = function($scope, $sce) {
    $scope.chamados = [{id: "1", descricao:"<b>blog.masterdaweb.com</b>"}]
    $scope.trustAsHtml = function(string) {
         return $sce.trustAsHtml(string);
    };
}

3 – Então a View fica da seguinte forma:

<li ng-repeat="chamado in chamados">
    <p data-ng-bind-html="trustAsHtml(chamado.descricao)"></p>
</li>

O objeto “chamado.descricao” que contém o HTML é passado para a função “$sce.trustAsHtml()” que permite exibir HTML na View.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *