AngularJS通过$sce输出html的方法
【问题描述】
AngularJS的强大之处之一就是他的数据双向绑定功能----->ng-bind
和针对form的ng-model
但在我们的项目当中会遇到这样的情况,后台返回的数据中带有各种各样的html标签
AngularJS输出html的时候,浏览器并不解析这些html标签
通过api,发现通过指令 ng-bind-html
来实现html的输出。
<div class="col-md-12 ng-binding" ng-bind-html="item.content ">
但是并不起作用,浏览器中显示的还是html代码。
【解决办法】
后来发现还需要通过通过$sce服务来实现html的展示。
angular.module("list",[]).controller("BlogListCtrl", BlogListCtrl).filter( 'to_trusted', ['$sce', function ($sce) { return function (text) { return $sce.trustAsHtml(text); } }] )
这里通过$sce构建一个过滤器来对输出的html进行过滤
<div class="col-md-12 ng-binding" ng-bind-html="item.content|to_trusted ">
这样就可以通过AngularJS正常的输出html标签,并且被浏览器解析了
【总结】
以上就是这篇文章的全部内容了,希望这篇文章的内容对大家的学习或者工作带来一定的帮助,如果有疑问大家可以留言交流。
相关推荐
xingdongfang 2019-11-10
zhenghao 2014-05-30
youyouzouzou 2014-05-30
zbwroom 2014-05-30
zbwroom 2014-05-29
鸟菜小端前 2018-09-12
lizean 2015-03-10
zbwroom 2015-04-10
Oranq 2015-08-29
CrazyDogWang 2016-01-06
lizean 2016-04-30
小新正在敲代码 2016-04-14
CrazyDogWang 2016-11-30
lizean 2016-12-19
princejingyun 2016-12-14
youyouzouzou 2017-02-24
youyouzouzou 2017-05-30
Oranq 2017-05-30
Oranq 2017-09-09