AngularJS 過濾器
過濾器可以使用一個管道字元(|)加入到表達式和指令中。
AngularJS 過濾器
AngularJS 過濾器可用來轉換資料:
##過濾器 | #描述 |
currency | 格式化數字為貨幣格式。 |
filter | 從陣列項目中選擇子集。 |
lowercase | 格式化字串為小寫。 |
orderBy | 根據某個表達式排列陣列。 |
uppercase | 格式化字串為大寫。 |
表達式中新增過濾器
過濾器可以透過一個管道字元(|)和一個過濾器添加到表達式中。 .
((下面的兩個實例,我們將使用前面章節中提到的person 控制器))
uppercase 過濾器將字串格式化為大寫:
實例
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script>
</head>
<body>
<div ng-app="myApp" ng-controller="personCtrl">
<p>姓名为 {{ lastName | uppercase }}</p>
</div>
<script src="personController.js"></script>
</body>
</html>
#執行實例»點擊"運行實例"按鈕查看線上實例
lowercase 過濾器將字串格式化為小寫:
實例
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script>
</head>
<body>
<div ng-app="myApp" ng-controller="personCtrl">
<p>姓名为 {{ lastName | lowercase }}</p>
</div>
<script src="personController.js"></script>
</body>
</html>
運行實例»點擊"運行實例" 按鈕查看線上實例
#currency 過濾器
currency 過濾器將數字格式化為貨幣格式:
實例
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script>
</head>
<body>
<div ng-app="myApp" ng-controller="costCtrl">
数量: <input type="number" ng-model="quantity">
价格: <input type="number" ng-model="price">
<p>总价 = {{ (quantity * price) | currency }}</p>
</div>
<script>
var app = angular.module('myApp', []);
app.controller('costCtrl', function($scope) {
$scope.quantity = 1;
$scope.price = 9.99;
});
</script>
</body>
</html>
執行實例»點擊"運行實例" 按鈕查看線上實例
#為指令新增篩選器
#過濾器可以透過一個管道字元(|)和一個過濾器加入到指令中。
orderBy 篩選器依照運算式排列陣列:
#實例
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script>
</head>
<body>
<div ng-app="myApp" ng-controller="namesCtrl">
<p>循环对象:</p>
<ul>
<li ng-repeat="x in names | orderBy:'country'">
{{ x.name + ', ' + x.country }}
</li>
</ul>
</div>
<script src="namesController.js"></script>
</body>
</html>
####################################################################################################################運行實例»######點擊"運行實例" 按鈕查看線上實例################過濾輸入######輸入過濾器可以透過一個管道字元( |)和一個過濾器加入指令中,該過濾器後面跟著一個冒號和一個模型名稱。 #########filter### 過濾器從陣列中選擇一個子集:############實例#####<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script>
</head>
<body>
<div ng-app="myApp" ng-controller="namesCtrl">
<p>输入过滤:</p>
<p><input type="text" ng-model="test"></p>
<ul>
<li ng-repeat="x in names | filter:test | orderBy:'country'">
{{ (x.name | uppercase) + ', ' + x.country }}
</li>
</ul>
</div>
<script src="namesController.js"></script>
</body>
</html>
####### ##運行實例»######點擊"運行實例" 按鈕查看線上實例#############