angularjs – $sce.trustAsHtml无效

前端之家收集整理的这篇文章主要介绍了angularjs – $sce.trustAsHtml无效前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
好吧,以下我在代码中测试过的工作如下:

JavaScript的:

var string = '<p>hello</p>';
$scope.html = $sce.trustAsHtml(string);

HTML:

<span ng-bind-html="html"></span>

我真正想要做的是:从JSON格式的服务器中提取一堆项目.其中一个JSON的密钥叫做“description”,它只是一长串的HTML代码.

我正在将这些项目推送到$scope数组中,以便我可以通过ng-repeat指令在页面显示它们.下面的代码总结了它是如何完成的:

JavaScript的:

$.getJSON('someURL',function(data) {
    $scope.items = [];
    for (var i = 0; i < data.count; i++) {
        var item = {};
        item.description = $sce.trustAsHtml(data.item[i].description);
        $scope.items.push(item);
    }
});

HTML:

<p ng-repeat="item in items">
    <span ng-bind-html="item.description"></div>
</p>

由于某种原因,这不会产生任何输出.我读到的东西是,无论你绑定$sce.trustAsHtml()的变量必须是$scope变量.在这种情况下,我将它设置为常规变量“item.description”,然后将其添加到$scope.item数组.

我怀疑这可能是它无法正常工作的原因,但我不知道如何修复它.

有人能帮忙吗?

谢谢!

解决方法

尝试< span ng-bind-html =“'{{item.description}}'”>< / span>.

这样的事情对我有用.

猜你在找的Angularjs相关文章