我想用MouseStats注释装饰一些敏感数据.
目前我这样做:
目前我这样做:
<td><!-- StartMouseStatsHide -->{{ $ctrl.payerName }}<!-- EndMouseStatsHide --></td>
但是在界面的许多地方都有很多敏感数据,所以我尝试使用过滤器来装饰值
<td>{{ $ctrl.payerName|mousestats_hide }}</td>
过滤器只是用注释包围值.
问题是以这种方式将评论转义给实体.
你有什么建议?
是否可以使用过滤器?
解决方法
Is it possible to do it using filters?
是的,可以使用角度过滤器预先添加/附加变量.
The problem is that in that way comments are being escaped to entities..
这是因为您使用{{$ctrl.payerName}}直接在范围内插入变量.它不解析HTML标记并按原样显示结果字符串.
如果要围绕给定值添加HTML注释,则需要ng-bind-html指令以防止将注释转义为实体.
所以而不是做
<td>{{ $ctrl.payerName|mousestats_hide }}</td>
你应该做
<td ng-bind-html="$ctrl.payerName|mousestats_hide"></td>
这是生成以下标记的working demo.
(我不喜欢< table>所以只需用<>替换< td>)
<body ng-controller="MainCtrl" class="ng-scope"> <span>Payer Name is: </span> <span ng-bind-html="payerName |mousestats_hide" class="ng-binding"> <!-- StartMouseStatsHide -->Jakub Filipczyk<!-- EndMouseStatsHide --> </span> </body>
注意到我在过滤器中注入的$sce服务的使用?
这是为了防止[$sce:unsafe] error 使角度相信有人试图在安全的环境中使用不安全的值.
希望它有所帮助!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。