Angular.Js中過濾器filter與自定義過濾器filter實(shí)例詳解
本文主要給大家介紹了Angular.Js過濾器filter與自定義過濾器filter的相關(guān)內(nèi)容,分享出來供大家參考學(xué)習(xí),下面來看看詳細(xì)的介紹:
一、AngularJS的filter過濾器:
- uppercase|lowercase:大小寫轉(zhuǎn)換過濾
- json:json格式過濾
- date:日期格式過濾
- number:數(shù)字格式過濾
- currency:貨幣格式過濾
- filter:查找
- limitTo:字符串對象截取
- orderBy:對象排序
<!DOCTYPE html>
<html lang="zh_CN">
<head>
<meta charset="UTF-8">
<title>Angular基礎(chǔ)</title>
</head>
<body>
<div ng-app="myApp">
<!-- 向表達(dá)式添加過濾器:可以通過一個(gè)管道字符(|)和一個(gè)過濾器添加到表達(dá)式中-->
<p>將字符串轉(zhuǎn)換為大小寫:</p>
<div ng-controller="uppercaseController">
<p>姓名為 {{ person.lastName | uppercase }}</p>
</div>
<div ng-controller="lowercaseController">
<p>姓名為 {{ person.lastName | lowercase }}</p>
</div>
<p>貨幣過濾:</p>
<div ng-controller="costController">
數(shù)量:<input type="number" ng-model="quantity">
價(jià)格:<input type="number" ng-model="price">
<p>總價(jià) = {{ (quantity * price) | currency }}</p>
{{250 |currency:"RMB ¥"}}
</div>
<!-- 向指令添加過濾器:可以通過一個(gè)管道字符(|)和一個(gè)過濾器添加到指令中-->
<p>按國家的字母順序排序?qū)ο螅?lt;/p>
<div ng-controller="namesController">
<p>循環(huán)對象:</p>
<ul>
<li ng-repeat="x in names | orderBy:'country'">
{{ x.name + ', ' + x.country }}
</li>
</ul>
<!--json格式過濾-->
{{jsonText | json}} <br/>
<!--date格式過濾-->
<span>{{1288323623006 | date:'yyyy-MM-dd HH:mm:ss'}}</span><br/>
<!--number格式過濾-->
{{1.2345678 |number:1}}<br/>
<!--字符串截取-->
{{ "i love tank" | limitTo:6 }}<br/>
{{ "i love tank" | limitTo:-6 }}<br/>
<!--對象排序:降序-->
{{ [{"age": 20,"id": 10,"name": "iphone"},
{"age": 12,"id": 11,"name": "sunm xing"},
{"age": 44,"id": 12,"name": "test abc"}
] | orderBy:'id':true }}<br/>
<!--對象排序:升序-->
{{ [{"age": 20,"id": 10,"name": "iphone"},
{"age": 12,"id": 11,"name": "sunm xing"},
{"age": 44,"id": 12,"name": "test abc"}
] | orderBy:'id' }}
</div>
<p>按輸入的字母顯示對象:</p>
<div ng-controller="namesFilterController">
<p>輸入過濾:</p>
<p><input type="text" ng-model="name"></p>
<ul>
<li ng-repeat="x in names | filter:name | orderBy:'country':true">
{{ (x.name | uppercase) + ', ' + x.country }}
</li>
</ul>
<p>name篩選:</p>
<ul>
<li ng-repeat="x in names | filter:{'name':name} | orderBy:'country':true">
{{ (x.name | uppercase) + ', ' + x.country }}
</li>
</ul>
{{ [{"age": 20,"id": 10,"name": "iphone"},
{"age": 12,"id": 11,"name": "sunm"},
{"age": 44,"id": 12,"name": "test abc"}
] | filter:{'name':'sunm'} }}
</div>
</div>
<script src="angular.min.js"></script>
<script type="application/javascript">
var myApp=angular.module('myApp',[]);
myApp.controller('uppercaseController',function($scope){
$scope.person = {
firstName: "John",
lastName: "Doe"
};
});
myApp.controller('lowercaseController',function($scope){
$scope.person = {
firstName: "John",
lastName: "Doe"
};
});
myApp.controller('costController',function($scope){
$scope.quantity = 1;
$scope.price = 9.99;
});
myApp.controller('namesController',function($scope){
$scope.names = [
{name:'Jani',country:'Norway'},
{name:'Hege',country:'Sweden'},
{name:'Kai',country:'Denmark'}
];
$scope.jsonText={foo:"bar",baz:23};
});
myApp.controller('namesFilterController',function($scope){
$scope.names = [
{name:'Jani',country:'Norway'},
{name:'Hege',country:'Sweden'},
{name:'Kai',country:'Denmark'}
];
});
</script>
</body>
</html>

二、AngularJs的控制器使用filter
<!DOCTYPE html>
<html lang="zh_CN">
<head>
<meta charset="UTF-8">
<title>Angular基礎(chǔ)</title>
</head>
<body>
<div ng-app="myApp">
<div ng-controller="firstCtrl">
{{uFirstName}}<br/>
{{cPrice}}<br/>
</div>
</div>
<script src="angular.min.js"></script>
<script type="application/javascript">
var myApp=angular.module('myApp',[]);
myApp.controller('firstCtrl',function($scope,$filter){
$scope.firstName="zhangsan";
$scope.uFirstName=$filter('uppercase')($scope.firstName);
$scope.price="121212";
$scope.cPrice=$filter('currency')($scope.price,'RMB ¥');
})
</script>
</body>
</html>
三、AngularJs自定義filter過濾器
<!DOCTYPE html>
<html lang="zh_CN">
<head>
<meta charset="UTF-8">
<title>Angular基礎(chǔ)</title>
</head>
<body>
<div ng-app="myApp">
<div ng-controller="firstCtrl">
{{welcome | replaceHello}}<br/>
{{welcome | replaceHello:3:5}}<br/>
{{welcome | rJs}}<br/>
</div>
</div>
<script src="angular.min.js"></script>
<script src="filter.js"></script>
<script type="application/javascript">
var myApp=angular.module('myApp',['myApp.filter']);
myApp.controller('firstCtrl',function($scope){
$scope.welcome="Hello AngularJs";
});
//自定義過濾器
myApp.filter('replaceHello',function(){
return function(input,n1,n2){
console.log(input);
console.log(n1);
console.log(n2);
return input.replace(/Hello/,'您好');
}
})
</script>
</body>
</html>
var appFilter=angular.module('myApp.filter',[]);
//自定義過濾器
appFilter.filter('rJs',function(){
return function(input,n1,n2){
console.log(input);
console.log(n1);
console.log(n2);
return input.replace(/Js/,' javaScript');
}
});

總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
- 詳解AngularJS中自定義過濾器
- 詳解AngularJS中$filter過濾器使用(自定義過濾器)
- AngularJS使用Filter自定義過濾器控制ng-repeat去除重復(fù)功能示例
- AngularJS 自定義過濾器詳解及實(shí)例代碼
- AngularJS自定義過濾器用法經(jīng)典實(shí)例總結(jié)
- Angularjs 依賴壓縮及自定義過濾器寫法
- angularJs自定義過濾器實(shí)現(xiàn)手機(jī)號信息隱藏的方法
- AngularJS實(shí)現(xiàn)的自定義過濾器簡單示例
- 簡述angular自定義過濾器在頁面和控制器中的使用
- 詳解Angular的內(nèi)置過濾器和自定義過濾器【推薦】
- angularjs自定義過濾器demo示例
相關(guān)文章
AngularJs中 ng-repeat指令中實(shí)現(xiàn)含有自定義指令的動(dòng)態(tài)html的方法
今天用angular寫table的時(shí)候,遇到了一個(gè)問題。在ng-repeat中,含有動(dòng)態(tài)的html,而這些html中含有自定義指令,怎么實(shí)現(xiàn)呢?下面小編給大家分享AngularJs中 ng-repeat指令中實(shí)現(xiàn)含有自定義指令的動(dòng)態(tài)html的方法,一起看看吧2017-01-01
詳解Angular Forms中自定義ngModel綁定值的方式
在Angular應(yīng)用中有兩種方式來實(shí)現(xiàn)表單綁定,但是對于一些特殊的表單控件沒法實(shí)現(xiàn),這篇文章主要介紹了詳解Angular Forms中自定義ngModel綁定值的方式,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-12-12
淺談關(guān)于angularJs中使用$.ajax的注意點(diǎn)
本篇文章主要介紹了關(guān)于angularJs中使用$.ajax的注意點(diǎn),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-08-08
AngularJS入門教程之學(xué)習(xí)環(huán)境搭建
這篇文章主要介紹了AngularJS入門教程之學(xué)習(xí)環(huán)境搭建,本教程將指導(dǎo)您完成一個(gè)簡單的應(yīng)用程序創(chuàng)建過程,包括編寫和運(yùn)行單元測試、不斷地測試應(yīng)用,需要的朋友可以參考下2014-12-12
淺談angularjs依賴服務(wù)注入寫法的注意點(diǎn)
下面小編就為大家?guī)硪黄獪\談angularjs依賴服務(wù)注入寫法的注意點(diǎn)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-04-04
angular6.0開發(fā)教程之如何安裝angular6.0框架
這篇文章主要介紹了angular6.0開發(fā)教程之如何安裝angular6.0框架,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-06-06

