AngularJS 自定義過濾器詳解及實例代碼
AngularJS另一個特點就是提供了過濾器,可以通過操作UNIX下管道的方式,操作數(shù)據(jù)結(jié)果。
通過使用管道,可以便于雙向的數(shù)據(jù)綁定中視圖的展現(xiàn)。
過濾器在處理過程中,將數(shù)據(jù)變成新的格式,而且可以使用管道這種鏈?zhǔn)斤L(fēng)格,還能接受附加的參數(shù)。
實現(xiàn)方式
下面看一下如何定義聲明一個過濾器,首先依然是要創(chuàng)建我們自己的模塊myAppModule
var myAppModule=agular.module("myApp",[]);
接下來在模塊的基礎(chǔ)上,創(chuàng)建過濾器:
myAppModule.filter("reverse",function(){
});
其中reverse是過濾器的名字,后面跟著過濾器的方法聲明,在方法中返回另一個方法:
myAppModule.filter("reverse",function(){
return function(input,uppercase){
var out = "";
for(var i=0 ; i<input.length; i++){
out = input.charAt(i)+out;
}
if(uppercase){
out = out.toUpperCase();
}
return out;
}
});
內(nèi)部返回的方法包含了兩個參數(shù),一個是輸入的值,就是我們過濾器接受的值。
如果想要實現(xiàn)下面的過濾器:
name | reverse
則input就是其中name代表的值。
后面的參數(shù)是可選的,我們這里接受uppercase這個bool值,判斷是否要進行大小寫轉(zhuǎn)換。
內(nèi)部實現(xiàn)的代碼,就沒必要解釋了。最后返回過濾后的字符串即可。
程序樣例
<!doctype html>
<html ng-app="myApp">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script src="http://apps.bdimg.com/libs/angular.js/1.2.16/angular.min.js"></script>
</head>
<body>
<div ng-controller="myAppCtrl">
name:{{ name }}<br>
reverse name:{{ name | reverse }}<br>
reverse&uppercase name:{{ name | reverse:true }}
</div>
<script type="text/javascript">
var myAppModule = angular.module("myApp",[]);
myAppModule.controller("myAppCtrl",["$scope",function($scope){
$scope.name = "xingoo";
}]);
myAppModule.filter("reverse",function(){
return function(input,uppercase){
var out = "";
for(var i=0 ; i<input.length; i++){
out = input.charAt(i)+out;
}
if(uppercase){
out = out.toUpperCase();
}
return out;
}
});
</script>
</body>
</html>
運行結(jié)果

以上就是對AngularJS 自定義過濾器 的資料整理,后續(xù)繼續(xù)補充相關(guān)資料,謝謝大家對本站的支持!
- 詳解AngularJS中自定義過濾器
- 詳解AngularJS中$filter過濾器使用(自定義過濾器)
- AngularJS使用Filter自定義過濾器控制ng-repeat去除重復(fù)功能示例
- AngularJS自定義過濾器用法經(jīng)典實例總結(jié)
- Angularjs 依賴壓縮及自定義過濾器寫法
- angularJs自定義過濾器實現(xiàn)手機號信息隱藏的方法
- AngularJS實現(xiàn)的自定義過濾器簡單示例
- 簡述angular自定義過濾器在頁面和控制器中的使用
- Angular.Js中過濾器filter與自定義過濾器filter實例詳解
- 詳解Angular的內(nèi)置過濾器和自定義過濾器【推薦】
- angularjs自定義過濾器demo示例
相關(guān)文章
AngularJS實現(xiàn)樹形結(jié)構(gòu)(ztree)菜單示例代碼
這篇文章運用示例代碼給大家詳細(xì)介紹了利用AngularJS如何實現(xiàn)樹形結(jié)構(gòu)(ztree)菜單,文中僅用了幾行AngularJS代碼就是了這個功能,對大家日常開發(fā)很有幫助,有需要的朋友們可以參考借鑒,下面來一起看看吧。2016-09-09
Angular4.0中引入laydate.js日期插件的方法教程
在AngularJs中我們會不可避免的使用第三方庫,例如jquery插件庫。下面這篇文章主要給大家介紹了關(guān)于Angular4.0中引入laydate.js日期插件的相關(guān)資料,需要的朋友可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2017-12-12
AngularJs Using $location詳解及示例代碼
本文主要介紹AngularJs Using $location的知識資料,這里整理了相關(guān)的資料,及簡單示例代碼,有興趣的小伙伴可以參考下2016-09-09
AngularJS監(jiān)聽ng-repeat渲染完成的兩種方法
這篇文章主要介紹了AngularJS監(jiān)聽ng-repeat渲染完成的兩種方法,結(jié)合實例形式分析了AngularJS基于自定義指令及廣播事件實現(xiàn)監(jiān)聽功能的相關(guān)操作技巧,需要的朋友可以參考下2018-01-01
Angular懶加載模塊與Combined?Injector原理全面解析
這篇文章主要為大家介紹了Angular懶加載模塊與Combined?Injector原理全面解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-10-10
基于Angular中ng-controller父子級嵌套的相關(guān)屬性詳解
今天小編就為大家分享一篇基于Angular中ng-controller父子級嵌套的相關(guān)屬性詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-10-10

