Angularjs 1 使用filter格式化输出href
2016-10-24 23:32
190 查看
Angularjs版本: 1.3.5
工作中,由于是多级菜单,如果上级菜单为空,就会访问Angularjs 默认的state,然后再展开菜单,我找资料之后,才知道是通过filter来格式化输出数据的,格式是
自定义的Filter是:
使用示例:
显示的效果是:
链接中出现了
语法是:
最终的显示效果是:
总结:
学习到了Angularjs中可以使用
Angular changes urls to “unsafe:” in extension page 解决Angularjs的链接显示unsafe
$compileProvider
工作中,由于是多级菜单,如果上级菜单为空,就会访问Angularjs 默认的state,然后再展开菜单,我找资料之后,才知道是通过filter来格式化输出数据的,格式是
{{ expression | filter }}.我想要的效果是,如果href为空的话,就输出
javascript:;.
自定义的Filter是:
var app = angular.module("app", []); app.controller('HomeCtrl', function($scope) { $scope.menus = [ { href:"", title:"test1" }, { href:"http://www.domain.com", title:"goto" } ]; }); app.filter("menuhref", function() { return function(href){ if(href == "" || href == undefined){ return "javascript:;"; }else{ return href; } }; });
使用示例:
<ion-list> <ion-item ng-repeat="menu in menus"> <a href="{{ menu.href | menuhref}}">{{menu.title}}</a> </ion-item> </ion-list>
显示的效果是:
链接中出现了
unsafe:javascript:;的字样,意思是不安全的链接,原来可以添加链接白名单,如我的code中,链接是
http:和
javascript:的开头的,就可以在
app.config进行定义链接白名单,如:
.config(function($stateProvider, $urlRouterProvider,$compileProvider) { $compileProvider.aHrefSanitizationWhitelist(/^\s*(javascript|http):/); });
语法是:
aHrefSanitizationWhitelist([regexp]);
最终的显示效果是:
总结:
学习到了Angularjs中可以使用
Filter来格式化输出的信息,链接出现
unsafe字样时,可以通过
$compileProvider.aHrefSanitizationWhitelist()方法设置链接白名单。
参考文献:
Building Custom AngularJS Filters 学习到如何定义自定义FilterAngular changes urls to “unsafe:” in extension page 解决Angularjs的链接显示unsafe
$compileProvider
$compileProvider文档
相关文章推荐
- 详解Angularjs在控制器(controller.js)中使用过滤器($filter)格式化日期/时间实例
- Oracle格式化输出列COLUMN的使用
- [c++ primer plus]使用cout格式化输出
- wprintf 中使用%I64d格式化输出LONGLONG
- CPP-如何使用cout格式化输出字符串
- 使用cout格式化输出字符串
- [学习笔记][C++Primer Plus]使用cout格式化输出字符串
- directshow使用自定义的filter(多输入,单输出)出现cpu使用率过高的问题,filter的丢帧处理
- 使用logcxx库和boost库构建系统日志的格式化输出
- 使用logcxx库和boost库构建系统日志的格式化输出
- 使用filter拦截servlet和jsp页面的内容,进行过滤后输出
- 使用cout格式化输出字符串
- 使用cout格式化输出字符串
- JAVA中使用printf(System.out.printf)如何格式化输出数字
- 使用NSLog方法格式化输出信息
- C#中格式化数字输出,使用NumberFormatInfo.NumberGroupSeparator 属性
- 入门计划->使用(C++库)ostringstream输出(格式化)
- 使用struts标签在JSP格式化输出日期型属性值
- 使用XmlBeans输出格式化xml文件,带有换行缩进
- 如何在Silverlight中使用XSLT格式化并输出XML文档