AngularJS 過濾器
過濾器可以使用一個管道字符(|)添加到表達式和指令中。
AngularJS 過濾器
AngularJS 過濾器可用於轉換數據:
過濾器 | 描述 |
---|---|
currency | 格式化數字為貨幣格式。 |
filter | 從數組項中選擇一個子集。 |
lowercase | 格式化字符串為小寫。 |
orderBy | 根據某個表達式排列數組。 |
uppercase | 格式化字符串為大寫。 |
表達式中添加過濾器
過濾器可以通過一個管道字符(|)和一個過濾器添加到表達式中。 .
((下面的兩個實例,我們將使用前面章節中提到的person 控制器))
uppercase過濾器將字符串格式化為大寫:
AngularJS 實例
< div ng-app= "myApp" ng-controller= "personCtrl" >
< p >姓名為{{ lastName | uppercase }} < /p >
< /div >
< p >姓名為{{ lastName | uppercase }} < /p >
< /div >
嘗試一下»
lowercase過濾器將字符串格式化為小寫:
AngularJS 實例
< div ng-app= "myApp" ng-controller= "personCtrl" >
< p >姓名為{{ lastName | lowercase }} < /p >
< /div >
< p >姓名為{{ lastName | lowercase }} < /p >
< /div >
嘗試一下»
currency 過濾器
currency過濾器將數字格式化為貨幣格式:
AngularJS 實例
< 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 >
< input type= "number" ng-model= "quantity" >
< input type= "number" ng-model= "price" >
< p >總價= {{ (quantity * price) | currency }} < /p >
< /div >
嘗試一下»
向指令添加過濾器
過濾器可以通過一個管道字符(|)和一個過濾器添加到指令中。
orderBy過濾器根據表達式排列數組:
AngularJS 實例
< div ng-app= "myApp" ng-controller= "namesCtrl" >
< ul >
< li ng-repeat= "x in names | orderBy:'country'" >
{{ x.name + ', ' + x.country }}
< /li >
< /ul >
< div >
< ul >
< li ng-repeat= "x in names | orderBy:'country'" >
{{ x.name + ', ' + x.country }}
< /li >
< /ul >
< div >
嘗試一下»
過濾輸入
輸入過濾器可以通過一個管道字符(|)和一個過濾器添加到指令中,該過濾器後跟一個冒號和一個模型名稱。
filter過濾器從數組中選擇一個子集:
AngularJS 實例
< div ng-app= "myApp" ng-controller= "namesCtrl" >
< 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 >
< 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 >
嘗試一下»