Angularjs html标签显示而不是渲染

时间:2018-04-25 09:50:00

标签: html angularjs rendering

我有以下变量:

$scope.someVar= "Some<br>text<br>here";

当我在{{ someVar }}的HTML文档中调用它时,我得到以下输出:

  

Some<br>text<br>here

我想要以下输出:

  

这里有些
文本

我该怎么做才能呈现HTML代码?

提前感谢您提出的所有建议。

2 个答案:

答案 0 :(得分:3)

您可以使用ng-bind-html

&#13;
&#13;
var app = angular.module("myApp", ['ngSanitize']);
app.controller("myCtrl", function($scope) {
    $scope.myText = "My name is: <h3>John Doe</h3>";
});
&#13;
<!DOCTYPE html>
<html>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular-sanitize.js"></script>
<body>

<div ng-app="myApp" ng-controller="myCtrl">

<p ng-bind-html="myText"></p>

</div>

</body>
</html>
&#13;
&#13;
&#13;

答案 1 :(得分:1)

其他解决方案:
你可以使用$ sce,
例如:
HTML:

dct.get('__clas__')

js:

<div ng-app="testApp" ng-controller="testController">
    <p ng-bind-html="someVar"></p>
</div>