AngularJs (第二弹)
过滤器篇
本文中双括号用单括号代替
过滤器用来格式化给用户展示的数据,包括内置过滤器和自定义过滤器
####两种使用方式
- javascript 通过$filter调用过滤器
	app.controller("demo",function($scope,$filter){
		$scope.name = $filter('lowercase')('Ari');
	})
Uncaught Error: [ $injector:nomod ] 注入器错误
- html形式 使用过滤器
	{123.123 | number:2}
####currency
- 将数值格式化货币格式
	{133 | currency}
####date
- 日期过滤器
Error: [ng:areq] ng-app未指定或者controller指定未定义js
		<body ng-app = "mytry">
        <div ng-controller="demo">
         {today | date:'MM'}
        </div>
        <script>
                 angular.module("mytry",[]).controller("demo",function($scope){
                     $scope.today = new Date();
                 })
        </script>
    </body>
####filter
- 从给定数组中选择一个子集并生成一个新数组返回
- 例如做搜索时过滤结果
这个过滤器的第一个参数
- 字符串
	{ ['ari','aa','bb'] | filter:'a'}
- 对象
	 {  [ {'name':'12'},{'name':'22'} ] | filter: {'name':'12'} }
- 函数(自定义函数过滤)
	 <body ng-app="mytry" >
        <div ng-controller="demo">
        { [ 'Ai','bi' ] | filter: kk }
        </div>
        <script>
                 angular.module("mytry",[]).controller("demo",function($scope){
                     $scope.kk = function(str){
                        return str[0] == str[0].toUpperCase()
                     }
                 })
        </script>
    </body>
这个过滤器的第二个参数
- true(严格)
- false(不区分大小写
####json
将对象过滤成json字符串
####limitTo
- 截取字符串或数组
```
    
  { sanFran | limitTo:3 }
</body>
---
####lowercase & uppercase
- 转大小写
---
####number 
-  数字格式
-  第二参数控制小数点后截取
{123.123 | number:2} ```
####orderBy
- 排序
- 3种参数形式
- 字符串
- 数组
- 函数
	[{'name':A},{'name':b}] | orderBy:'name'
按名字排序(字母顺序)
 | orderBy:'-name'
| orderBy:'name':true
倒序
|orderBy:['age','name']
如果age相同按name排序
####自定义过滤器
<body ng-app ="my">
	<div ng-controller="ha">
		{ sanFran | suck}
	</div>	
	<script type="text/javascript">
	angular.module('my', []).filter('suck',function(){
		return function(input){
			return input[0].toUpperCase()+ input.slice(1)
		}
	}).controller("ha",function($scope){		
	$scope.sanFran="san";
	});	
	</script>
</body>
注意:
- 结构
.filter("name",function(){
	return function(){
		return bulabula
	}
})
