AngularJS 过滤与排序详解及实例代码
YPE html>
æ们项ç®ä¸çæ°æ®é½éè¦è¿æ»¤åæè½è¿è¡å±ç¤ºï¼è¿æ¢ä¿éäºé¡¹ç®çå®å ¨ï¼ä¹è®©æ们çç½ç»ç¯å¢åå¾è¶æ¥è¶å¥½ï¼ä¸ææ¯ç±ç«ææ¯é¢éå°ç¼å¸¦ç»å¤§å®¶çAngularJS è¿æ»¤ä¸æåºè¯¦è§£åå®ä¾ä»£ç ï¼å¸æè½å¸®å°å¤§å®¶ã
æ¬ç¨åºä¸å¯ä»¥äºè§£å°ï¼
ãã1 angularjsçè¿æ»¤å¨
ãã2 ng-repeatç使ç¨æ¹æ³
ãã3 æ§å¶å¨ç使ç¨
ãã4 æ°æ®çç»å®
ããç¨åºè®¾è®¡åæ
ããé¦å ï¼å¦æè¦æ¯å æ¥è¯¢è¿æ»¤ï¼å°±è¦ä½¿ç¨å°AngularJSä¸ç è¿æ»¤å¨filter äºã
ããç´æ¥å¨è¡¨è¾¾å¼çåé¢ä½¿ç¨ç®¡éå½ä»¤ç¬¦ | ï¼æç §ä¸é¢çåæ³å°±å¯ä»¥è¾¾å°ä¸ä¸ªè¿æ»¤çææï¼
{{ persons | filter:query }}
ããéè¿ä½¿ç¨filterå®ç°è¿æ»¤æä½ï¼queryæ¯æ¥è¯¢è¿æ»¤æ¶è¾å ¥çå符串ã
ãã类似å°ï¼ä½¿ç¨orderByå°±å¯ä»¥å®ç°æåºçåè½ï¼
{{ persons | filter:query | orderBy:order }}
ããä¸é¢çæ¥è¯¢ä»¥åæåºæ¶åå°ä¸¤ä¸ªåéï¼queryåorderãå¨è¿éç´æ¥ä½¿ç¨ng-modelå®ç°æ°æ®çç»å®å³å¯ï¼
Search: Sort by:
ããAngularJSæ¯ä¸é¨åºäºDOMçæ¡æ¶è¯è¨ï¼å æ¤ä¸éè¦å®ç°ä»»ä½ççå¬å¨ä»¥åäºä»¶è§¦åå¨ï¼å½queryæå¨çè¾å ¥æ¡åçä»»ä½æ¹åæ¶ï¼å°±ä¼è§¦åè¾å ¥æ¡ä¸ä¸é¢ç表达å¼å±ç°çååå·æ°ï¼
ããç¸æ¯äºå ¶ä»çä¸äºæ¡æ¶ï¼æ¯åºäºå符串éè¿DOMèç¹innerHTMLæ·»å å°DOMä¸ï¼AngularJSçå®ç°æ¹å¼å å¿«äºæ¨¡åä¸è§å¾çå±ç°ã并ä¸åå°äºå¤§éä¸å¿ è¦ççå¬å¨å触åå¨åä¹ç±»ç代ç çç¼åï¼çæ£å®ç°äºç±»ä¼¼springçææ~
ããæ°æ®çå±ç°ï¼å¯ä»¥éè¿ng-repeatå®ç°ãå½ç½é¡µè§£æå°ng-repeatçæ¶åï¼ä¼ä¸ºæ¯ä¸ä¸ªæ°ç»ä¸çå ç´ é½å éä¸ä»½æ ç¾ï¼è¿è¡ç¼è¯è§£æãããã
ããã
- {{person.name}} {{person.age}}
ããå©ä¸çå·¥ä½å°±æ¯éè¦å¨scriptä¸è¿è¡peronsæ°ç»çåå§åï¼Â  Â
...
ãã代ç 以åç»æ
ããæåè´´ä¸å ¨é¨ç代ç ï¼
Search: Sort by:
- {{person.name}} {{person.age}}
ãã使ç¨ç»æï¼
ããå¨é»è®¤æ åµä¸ï¼ä½¿ç¨ageè¿è¡æåºï¼
ããéè¿éæ©åå¯ä»¥ä½¿ç¨nameæåº
ããåè¾å ¥å符çæ¶åï¼ä¼èªå¨è¿æ¥è¯¢è¿æ»¤æä¸äºé项
以ä¸å°±æ¯ç±ç«ææ¯é¢éå°ç¼ä»ç»çå ³äºAngularJS è¿æ»¤ä¸æåºè¯¦è§£åå®ä¾ä»£ç ï¼å¨åºç°é®é¢æ¶åä¸å®ä¸è½æ ï¼è¦åæ¶å»æ¥æ¾å°é®é¢æå¨ï¼ç¶åè¿è¡è§£å³ã