Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
AngularJS使用双大括号表示法呈现HTML_Html_Angularjs - Fatal编程技术网

AngularJS使用双大括号表示法呈现HTML

AngularJS使用双大括号表示法呈现HTML,html,angularjs,Html,Angularjs,我有包含HTML的JSON变量 通过这样做:{{source.HTML}Angular显示的是和,而不是 我能做些什么来呈现实际的HTML 更新: 这是我的控制器: app.controller('objectCtrl', ['$scope', '$http', '$routeParams', function($scope, $http, $routeParams) { var productId = ($routeParams.productId || ""); $

我有包含HTML的JSON变量

通过这样做:
{{source.HTML}
Angular显示的是
,而不是

我能做些什么来呈现实际的HTML



更新:
这是我的控制器:

app.controller('objectCtrl', ['$scope', '$http', '$routeParams',
  function($scope, $http, $routeParams) {

    var productId = ($routeParams.productId || "");

    $http.get(templateSource+'/object?i='+productId)
       .then(function(result) {
          $scope.elsevierObject = {};
          angular.extend($scope,result.data[0]);
        });
  }]);
在我的HTML中,我可以使用:

<div>{{foo.bar.theHTML}}</div>
{{foo.bar.theHTML}
您想显示HTML(如
Hello
)还是呈现HTML(如Hello

  • 如果你想展示它,花括号就足够了。但是,如果您拥有的html具有html实体(如
    stuff
    ),则需要手动取消其scape,请参阅

  • 如果要渲染它,需要使用
    ng bind html
    指令,而不是curcly括号(仅供参考,它是
    ng bind
    指令的快捷方式)。您需要使用
    $sce.trustAsHtml
    告诉Angular注入该指令的内容是安全的

请参见以下两种情况的示例:

angular.module('test',[]).controller('ctrl',function($scope,$sce){
$scope.HTML='Hello';
$scope.trust=$sce.trustAsHtml;
});

显示:{{HTML}
提供:

look into Hi@Seth的可能副本这不是一个副本,这一个集中在大括号符号上。您的html和控制器是不同的。我看不出您在哪里设置了
$scope.foo.bar.theHTML
。注意,我已经用更多的信息更新了我的答案,你不能直接使用吗?你可以。只需确保您正在引用ngSanitize。