AnglarJS рдорд╣рд╛рди рд╣реИ! рд▓реЗрдХрд┐рди рдЬрдм рдЬрдЯрд┐рд▓ рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛рдУрдВ рд╡рд╛рд▓реА рдмрдбрд╝реА рд╕реВрдЪрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛, рдпрд╣ рдмрд╣реБрдд рдзреАрд░реЗ-рдзреАрд░реЗ рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рд╕рдХрддрд╛ рд╣реИ! рд╣рдореЗрдВ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛ рдЬрдм рд╣рдорд╛рд░реЗ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдкреИрдирд▓ рдХреЛ AngularJS рдореЗрдВ рдкреЛрд░реНрдЯ рдХрд┐рдпрд╛ред рд▓рдЧрднрдЧ 500 рд▓рд╛рдЗрдиреЛрдВ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддреЗ рд╕рдордп рдмрд┐рдирд╛ рджреЗрд░реА рдХреЗ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдерд╛ред рд▓реЗрдХрд┐рди рдкрд╣рд▓рд╛ рдкреНрд░рджрд░реНрд╢рди 7 рд╕реЗрдХрдВрдб рддрдХ рдЪрд▓рд╛ред рдмреЗрдХрд╛рд░!
рд╣рдореЗрдВ рдЕрдкрдиреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЗрдВ рджреЛ рдЕрдбрд╝рдЪрдиреЗрдВ рдорд┐рд▓реАрдВред рдПрдХ
ng-repeat
рдирд┐рд░реНрджреЗрд╢ рдХреЗ рд╕рд╛рде рдЬреБрдбрд╝рд╛ рдерд╛, рдФрд░ рджреВрд╕рд░рд╛ рдлрд┐рд▓реНрдЯрд░ рдХреЗ рд╕рд╛рдеред
рдпрд╣ рдЖрд▓реЗрдЦ рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд╕рд╛рде рд╣рдорд╛рд░реЗ рдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддрд╛ рд╣реИ, рдпрд╛ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ рддрд░реАрдХреЛрдВ рд╕реЗ, рдЬреЛ рд╕рдорд╕реНрдпрд╛ рдЙрддреНрдкрдиреНрди рд╣реБрдИред рдпрд╣ рдЖрдкрдХреЛ рд╡рд┐рдЪрд╛рд░ рдФрд░ рд╕реБрдЭрд╛рд╡ рджреЗрдЧрд╛ рдХрд┐ рдЖрдк рдЕрдкрдиреА рддрд╛рдХрдд рдХрд╣рд╛рдВ рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдХрд┐рди рддрд░реАрдХреЛрдВ рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдПрдирдЬреА-рд░рд┐рдкреАрдЯ рдирд┐рд░реНрджреЗрд╢ рдмрдбрд╝реА рд╕реВрдЪрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдзреАрд░реЗ-рдзреАрд░реЗ рдХреНрдпреЛрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ?
ng-repeat
рдирд┐рд░реНрджреЗрд╢ рдзреАрд░реЗ-рдзреАрд░реЗ рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджреЗрддрд╛ рд╣реИ рдпрджрд┐ 2500 рд╕реЗ рдЕрдзрд┐рдХ рддрддреНрд╡реЛрдВ рдХреЗ рд╕рд╛рде рджреЛ-рддрд░рдлрд╛ рдмрд╛рдзреНрдпрдХрд╛рд░реА рдХреЛ рд╕реВрдЪрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдмрдирд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЖрдк
рдорд┐рд╕рдХреЛ рд╣реЗрд╡рд░реА рджреНрд╡рд╛рд░рд╛ рдкреЛрд╕реНрдЯ рдореЗрдВ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВред рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рд╣реИ рдХреНрдпреЛрдВрдХрд┐ AngularJS "рдЧрдВрджреЗ рдЪреЗрдХ" рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкрд░рд┐рд╡рд░реНрддрди рдХреЛ рдЯреНрд░реИрдХ рдХрд░рддрд╛ рд╣реИред рдкреНрд░рддреНрдпреЗрдХ рдкрд░рд┐рд╡рд░реНрддрди рдЯреНрд░реИрдХрд┐рдВрдЧ рдореЗрдВ рдХреБрдЫ рд╕рдордп рд▓рдЧреЗрдЧрд╛, рдЬреЛ рдПрдХ рдЬрдЯрд┐рд▓ рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛ рдХреЗ рд╕рд╛рде рдмрдбрд╝реА рд╕реВрдЪрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЗ рдЖрд╡реЗрджрди рдХреЛ рдзреАрдорд╛ рдХрд░рддрд╛ рд╣реИред
рдкреНрд░рджрд░реНрд╢рди рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП рдкреНрд░рдпреБрдХреНрдд рдкреВрд░реНрд╡рд╛рдкреЗрдХреНрд╖рд╛рдПрдБ
рдирд┐рд░реНрджреЗрд╢ рдХреЗ рдХрд╛рдо рдХреЗ рдШрдВрдЯреЗ рдЯреНрд░реИрдХ рдХрд░рдирд╛:рд╕реВрдЪреА рдХреЗ рдкреНрд░рджрд░реНрд╢рди рд╕рдордп рдХреЛ рдорд╛рдкрдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдордиреЗ рдПрдХ рд╕рд░рд▓ рдирд┐рд░реНрджреЗрд╢ рд▓рд┐рдЦрд╛ рдЬреЛ
ng-repeat
рдХреА рдЕрд╡рдзрд┐ рдХреЛ рдЕрдкрдиреА
$last
рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдорд╛рдкрддрд╛ рд╣реИред рдЖрдзрд╛рд░ рддрд┐рдерд┐ рд╣рдорд╛рд░реА
TimeTracker
рд╕реЗрд╡рд╛ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рд╣реИ, рдЗрд╕рд▓рд┐рдП рдкрд░рд┐рдгрд╛рдо рд╕рд░реНрд╡рд░ рд╕реЗ рдбреЗрдЯрд╛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдкрд░ рдирд┐рд░реНрднрд░ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред
HTML рдореЗрдВ рдЙрдкрдпреЛрдЧ:
<tr ng-repeat="item in items" post-repeat-directive>тАж</tr>
Chrome рдореЗрдВ рд╡рд┐рдХрд╛рд╕ рдЯреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдРрддрд┐рд╣рд╛рд╕рд┐рдХ рдЯреНрд░реИрдХрд┐рдВрдЧ рдХреА рд╕реБрд╡рд┐рдзрд╛рдПрдБChrome рдбреЗрд╡рд▓рдкрд░ рдЯреВрд▓ рдХреЗ рдХрд╛рд▓рдХреНрд░рдо рдЯреИрдм (рд╕рдордпрд░реЗрдЦрд╛) рдкрд░, рдЖрдк рдИрд╡реЗрдВрдЯреНрд╕ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдб рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдлрд╝реНрд░реЗрдореЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ (рдлреНрд░реЗрдо) рдФрд░ рдореЗрдореЛрд░реА (рдореЗрдореЛрд░реА) рдХрд╛ рдЖрд╡рдВрдЯрдиред рдореЗрдореЛрд░реА рд▓реАрдХ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдФрд░ рдореЗрдореЛрд░реА рдХреА рдорд╛рддреНрд░рд╛ рдХрд╛ рдирд┐рд░реНрдзрд╛рд░рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореЗрдореЛрд░реА рдЯреВрд▓ рдЙрдкрдпреЛрдЧреА рд╣реИред рдкреГрд╖реНрда рдлрд╝реНрд▓рд┐рдХрд░рд┐рдВрдЧ рдПрдХ рд╕рдорд╕реНрдпрд╛ рдмрди рдЬрд╛рддреА рд╣реИ рдЬрдм рдлрд╝реНрд░реЗрдо рддрд╛рдЬрд╝рд╛ рджрд░ 30 рдлреНрд░реЗрдо рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдб рд╕реЗ рдХрдо рд╣реЛрддреА рд╣реИред рдлрд╝реНрд░реЗрдо рдЯреВрд▓ рдкреГрд╖реНрда рдХреА рдкреНрд░рджрд░реНрд╢рди рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рд╕реАрдкреАрдпреВ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдХрд┐рддрдирд╛ рд╕рдордп рд▓реЗрддрд╛ рд╣реИред
рд╕реВрдЪреА рдХреЗ рдЖрдХрд╛рд░ рдХреЛ рд╕реАрдорд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реА рдореВрд▓ рд╕реЗрдЯрд┐рдВрдЧреНрд╕
рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╕реВрдЪреА рдХреЗ рдЖрдХрд╛рд░ рдХреЛ рд╕реАрдорд┐рдд рдХрд░рдирд╛ рд╣реИред рдпрд╣ рдкреЗрдЬреЗрд╢рди рдпрд╛ рдЕрдВрддрд╣реАрди рд╕реНрдХреНрд░реЙрд▓рд┐рдВрдЧ рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдкреГрд╖реНрда рдкрд░ рдЕрдВрдХ рд▓рдЧрд╛рдирд╛
рд╣рдорд╛рд░рд╛ рдкреГрд╖реНрдард╛рдВрдХрди рд╡рд┐рдзрд┐ AngularJS
limitTo
рдлрд╝рд┐рд▓реНрдЯрд░ (рд╕рдВрд╕реНрдХрд░рдг 1.1.4 рд╕реЗ) рдФрд░ рд╣рдорд╛рд░реЗ
startFrom
рдлрд╝рд┐рд▓реНрдЯрд░ рдХреЗ рд╕рдВрдпреЛрдЬрди рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИред рдпрд╣ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдкреНрд░рджрд░реНрд╢рд┐рдд рд╕реВрдЪреА рдХреЗ рдЖрдХрд╛рд░ рдХреЛ рд╕реАрдорд┐рдд рдХрд░рдХреЗ рдкреНрд░рджрд░реНрд╢рди рд╕рдордп рдХреЛ рдХрдо рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдкреНрд░рджрд░реНрд╢рди рд╕рдордп рдХреЛ рдХрдо рдХрд░рдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдкреНрд░рднрд╛рд╡реА рддрд░реАрдХрд╛ рд╣реИред
HTML рдореЗрдВ рдЙрдкрдпреЛрдЧред
<button ng-repeat="i in getNumberAsArray(numberOfPages()) track by $index" ng-click="setCurrentPage($index)">{{$index + 1}}</button <!-- --> <tr ng-repeat="item in displayedItemsList | startFrom: currentPage * pageSize | limitTo:pageSize" /tr>
рдпрджрд┐ рдЖрдк рдкреЗрдЬрд┐рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдпрд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ , рд▓реЗрдХрд┐рди рдЖрдк рдЕрднреА рднреА рдзреАрдореЗ рдлрд┐рд▓реНрдЯрд░ рдХреА рд╕рдорд╕реНрдпрд╛ рд╕реЗ рдЪрд┐рдВрддрд┐рдд рд╣реИрдВ, рддреЛ рдЪрд░рдг 5 рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЖрд▓рд╕реА рди рд╣реЛрдВ, рдФрд░ рдЕрдирд╛рд╡рд╢реНрдпрдХ рд╕реВрдЪреА рдЖрдЗрдЯрдо
ng-hide
рд▓рд┐рдП
ng-hide
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
рдЕрдВрддрд╣реАрди рд╕реНрдХреНрд░реЙрд▓рд┐рдВрдЧ
рд╣рдорд╛рд░реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ, рд╣рдордиреЗ рдЕрдирдВрдд рд╕реНрдХреНрд░реЙрд▓рд┐рдВрдЧ рд╡рд╛рд▓реЗ рд╡рд┐рдХрд▓реНрдк рдкрд░ рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рдХрд┐рдпрд╛ред рдпрджрд┐ рдЖрдк рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХрд╛ рдЕрдзрд┐рдХ рдЧрд╣рд░рд╛рдИ рд╕реЗ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк
AngularJS рдХреЗ рд▓рд┐рдП рдЕрдВрддрд╣реАрди рд╕реНрдХреНрд░реЙрд▓ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдкрд░ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред
рдЕрдиреБрдХреВрд▓рди рджрд┐рд╢рд╛рдирд┐рд░реНрджреЗрд╢
1. рдбреЗрдЯрд╛ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдХреЗ рдмрд┐рдирд╛ рдПрдХ рд╕реВрдЪреА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВ
рдпрд╣ рд╕рдмрд╕реЗ рд╕реНрдкрд╖реНрдЯ рд╕рдорд╛рдзрд╛рди рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдбреЗрдЯрд╛ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рд╣реИ рдЬреЛ рдкреНрд░рджрд░реНрд╢рди рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рдХреЗрд╡рд▓ рдПрдХ рдмрд╛рд░ рд╕реВрдЪреА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдбреЗрдЯрд╛ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рдкрд╛рдирд╛ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реИ, рдФрд░ рдбреЗрдЯрд╛ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдпрд╛ рдмрджрд▓рдиреЗ рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдбреЗрдЯрд╛ рдкрд░ рдирд┐рдпрдВрддреНрд░рдг рдЦреЛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рд╣рдореЗрдВ рд╕реВрдЯ рдирд╣реАрдВ рдХрд░рддрд╛ рдерд╛ред рд░реБрдЪрд┐ рд░рдЦрдиреЗ рд╡рд╛рд▓реЛрдВ рдХреЗ рд▓рд┐рдП,
рдмрд┐рдВрджрд╛рд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рджреЗрдЦреЗрдВред
2. рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд╡рд┐рдзрд┐ рдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рди рдХрд░реЗрдВ
рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд┐рдП рдЧрдП рд╕рдВрдЧреНрд░рд╣ рдХреЛ рд╕реАрдзреЗ рдирд┐рдпрдВрддреНрд░рдХ рдореЗрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд┐рдП рдЧрдП рд╕рдВрдЧреНрд░рд╣ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рди рдХрд░реЗрдВред
ng-repeat
рдкреНрд░рддреНрдпреЗрдХ
$ рдкрдЪ рдЪрдХреНрд░ рдкрд░ рд╕рднреА рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рддреНред рдпрд╣ рдмрд╣реБрдд рдмрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╣рдорд╛рд░реЗ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ,
filteredItems()
рдПрдХ рдлрд╝рд┐рд▓реНрдЯрд░реНрдб рд╕рдВрдЧреНрд░рд╣ рд▓реМрдЯрд╛рддрд╛ рд╣реИред рдпрджрд┐ рдпрд╣ рдзреАрд░реЗ-рдзреАрд░реЗ рдЪрд▓рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдЬрд▓реНрджреА рд╕реЗ рдкреВрд░реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдзреАрдорд╛ рдХрд░ рджреЗрдЧрд╛ред
<li ng-repeat="item in filteredItems()"> <li ng-repeat="item in items">
3. рджреЛ рд╕реВрдЪрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ (рдПрдХ рджреГрд╢реНрдп рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рджреВрд╕рд░рд╛ рдбреЗрдЯрд╛ рд╕реНрд░реЛрдд рдХреЗ рд░реВрдк рдореЗрдВ)
рдЗрд╕ рдЙрдкрдпреЛрдЧреА рдЯреЗрдореНрдкрд▓реЗрдЯ рдХрд╛ рдЕрд░реНрде рдкреНрд░рджрд░реНрд╢рди рд╕реВрдЪреА рдХреЛ рдбреЗрдЯрд╛ рд╕реВрдЪреА рд╕реЗ рдЕрд▓рдЧ рдХрд░рдирд╛ рд╣реИред рдпрд╣ рдЖрдкрдХреЛ рдХрдИ рдлрд╝рд┐рд▓реНрдЯрд░ рдкреВрд░реНрд╡-рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдФрд░ рд╕рдВрдЧреНрд░рд╣ рдХреИрд╢рд┐рдВрдЧ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЙрджрд╛рд╣рд░рдг рдПрдХ рдмрд╣реБрдд рд╣реА рд╕рд░рд▓ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИред рдЪрд░
filteredLists
рдЧрдП рд╕рдВрдЧреНрд░рд╣ рд╕рдВрдЧреНрд░рд╣ рдХреИрд╢ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдорд┐рд▓рд╛рди рдХреЗ рд▓рд┐рдП
applyFilter
рд╡рд┐рдзрд┐ рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИред
рджреЗрдЦрдиреЗ рдореЗрдВ:
<button ng-click="applyFilter('active')"> </button> <ul><li ng-repeat="item in displayedItems">{{item.name}}<li></ul>
4. рдкреВрд░рдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдирдЬреА-рд╢реЛ рдХреЗ рдмрдЬрд╛рдп рдПрдирдЬреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ
рдпрджрд┐ рдЖрдк рд╕реВрдЪреА рдЖрдЗрдЯрдо рдкрд░ рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрддрд┐рд░рд┐рдХреНрдд рдирд┐рд░реНрджреЗрд╢реЛрдВ рдпрд╛ рдЯреЗрдореНрдкрд▓реЗрдЯреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдпрджрд┐ рдЖрдк рдЙрд╕ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддреЗ рд╣реИрдВ,
рддреЛ рдПрдирдЬреА- рдЗрдлрд╝ (рддрдм рд╕реЗ рд╕рдВрд╕реНрдХрд░рдг 1.1.2) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
ng-if
рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдирд┐рд╖реНрдХреНрд░рд┐рдп рдХрд░рддрд╛ рд╣реИ (
ng-show
рд╡рд┐рдкрд░реАрдд)ред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЕрддрд┐рд░рд┐рдХреНрдд рддрддреНрд╡ рдЬреЛрдбрд╝реЗ рдЬрд╛рддреЗ рд╣реИрдВ, рдФрд░ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдХреЛ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрдм рд╡реЗ рдЖрд╡рд╢реНрдпрдХ рд╣реЛрддреЗ рд╣реИрдВред
<li ng-repeat="item in items"> <p> {{ item.title }} </p> <button ng-click="item.showDetails = !item.showDetails">Show details</buttons> <div ng-if="item.showDetails"> {{item.details}} </div> </li>
5. рдПрдирдЧреБрд▓рд░рдЬреЗрдПрд╕ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдЬреИрд╕реЗ рдПрдирдЬреА-рдорд╛рдЙрд╕реЗрдВрдЯрд░, рдПрдирдЬреА-рдореВрд╕рд▓реАрд╡, рдЖрджрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рди рдХрд░реЗрдВред
рд╣рдорд╛рд░реА рд░рд╛рдп рдореЗрдВ, рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдПрдВрдЧреБрд▓рд░рдЬреЗрдПрд╕
ng-mouseenter
рдХреЗ рдЙрдкрдпреЛрдЧ рд╕реЗ рд╕реНрдХреНрд░реАрди рдЭрд┐рд▓рдорд┐рд▓рд╛рд╣рдЯ рдХрд╛ рдХрд╛рд░рдг рдмрдиреАред рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдлреНрд░реЗрдо рджрд░ рдЬреНрдпрд╛рджрд╛рддрд░ рдорд╛рдорд▓реЛрдВ рдореЗрдВ 30 рдлреНрд░реЗрдо рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдб рд╕реЗ рдиреАрдЪреЗ рдерд╛ред рдПрдиреАрдореЗрд╢рди рдкреНрд░рднрд╛рд╡ рдФрд░ рд╣реЙрд╡рд░ рдкреНрд░рднрд╛рд╡ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╢реБрджреНрдз jQuery рдХрд╛ рдЙрдкрдпреЛрдЧ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛ред рдмрд╛рдж рдореЗрдВ DOM рдореЗрдВ рдЬреЛрдбрд╝реЗ рдЧрдП рддрддреНрд╡реЛрдВ рд╕реЗ рд╕реВрдЪрдирд╛рдПрдБ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП jQuery.live () рдХреЗ рд╕рд╛рде рдХреЗрд╡рд▓ рдорд╛рдЙрд╕ рдИрд╡реЗрдВрдЯ рдХреЛ рд▓рдкреЗрдЯрдирд╛ рдпрд╛рдж рд░рдЦреЗрдВред
6. рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдЧреБрдг рд╕реЗрдЯ рдХрд░рдирд╛ред рдПрдирдЬреА-рд╢реЛ рдХреЗ рд╕рд╛рде рдмрд╣рд┐рд╖реНрдХреГрдд рдЖрдЗрдЯрдо рдЫрд┐рдкрд╛рдПрдВ
рд▓рдВрдмреА рд╕реВрдЪрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде, рдлрд╝рд┐рд▓реНрдЯрд░ рднреА рдЕрдзрд┐рдХ рдзреАрдореА рдЧрддрд┐ рд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рд┐рд▓реНрдЯрд░ рдореВрд▓ рд╕реВрдЪреА рдХрд╛ рдЕрдкрдирд╛ рд╕рдмрд╕реЗрдЯ рдмрдирд╛рддрд╛ рд╣реИред рдХрдИ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдЬрдм рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдбреЗрдЯрд╛ рдирд╣реАрдВ рдмрджрд▓рддрд╛ рд╣реИ, рддреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХрд╛ рдкрд░рд┐рдгрд╛рдо рд╕рдорд╛рди рд░рд╣рддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдбреЗрдЯрд╛ рдХреА рд╕реВрдЪреА рдХреЛ рдкреВрд░реНрд╡ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдлрд╝рд┐рд▓реНрдЯрд░ рдкрд░рд┐рдгрд╛рдо рдХреЛ рдЙрд╕ рд╕рдордп рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрдм рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА, рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рд╕рдордп рдкрд░ рдмрдЪрддред
ng-repeat
рдирд┐рд░реНрджреЗрд╢ рдХреЗ рд╕рд╛рде рдлрд╝рд┐рд▓реНрдЯрд░ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╕рдордп, рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рд┐рд▓реНрдЯрд░ рдореВрд▓ рд╕рдВрдЧреНрд░рд╣ рдХрд╛ рд╕рдмрд╕реЗрдЯ рджреЗрддрд╛ рд╣реИред AngularJS DOM рд╕реЗ рдлрд╝рд┐рд▓реНрдЯрд░ рджреНрд╡рд╛рд░рд╛ рдмрд╛рд╣рд░ рдХрд┐рдП рдЧрдП рддрддреНрд╡реЛрдВ рдХреЛ рднреА рд╣рдЯрд╛рддрд╛ рд╣реИ, рдФрд░
$destroy
рдШрдЯрдирд╛
$destroy
рдмрдврд╝рд╛рддрд╛ рд╣реИ, рдЬреЛ рдЙрдиреНрд╣реЗрдВ
$scope
рд╕реЗ рднреА рдирд┐рдХрд╛рд▓рддрд╛ рд╣реИред рдЬрдм рдЗрдирдкреБрдЯ рд╕рдВрдЧреНрд░рд╣ рдмрджрд▓рддрд╛ рд╣реИ, рддреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкрд╛рд░рд┐рдд рддрддреНрд╡реЛрдВ рдХрд╛ рдПрдХ рд╕рдмрд╕реЗрдЯ рднреА рдмрджрд▓ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рдлрд┐рд░ рд╕реЗ рдЙрдиреНрд╣реЗрдВ рдлрд┐рд░ рд╕реЗ рд▓рд╛рд▓ рдпрд╛ рдирд╖реНрдЯ рдХрд░ рджреЗрддрд╛ рд╣реИред
рдЬреНрдпрд╛рджрд╛рддрд░ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдпрд╣ рд╡реНрдпрд╡рд╣рд╛рд░ рд╕рд╛рдорд╛рдиреНрдп рд╣реИ, рд▓реЗрдХрд┐рди рдЙрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдЬрдм рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдХреНрд╕рд░ рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдпрд╛ рд╕реВрдЪреА рдмрд╣реБрдд рдмрдбрд╝реА рд╣реИ, рдирд┐рд░рдВрддрд░ рд▓рд┐рдВрдХрд┐рдВрдЧ рдФрд░ рддрддреНрд╡реЛрдВ рдХрд╛ рд╡рд┐рдирд╛рд╢ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдмрд╣реБрдд рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИред рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ рдХреЛ рдЧрддрд┐ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк
ng-show
рдФрд░
ng-hide
рдирд┐рд░реНрджреЗрд╢реЛрдВ
ng-show
рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдирд┐рдпрдВрддреНрд░рдХ рдореЗрдВ рдлрд┐рд▓реНрдЯрд░ рдХреА рдЧрдгрдирд╛ рдХрд░реЗрдВ рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рддрддреНрд╡ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдВрдкрддреНрддрд┐ рдЬреЛрдбрд╝реЗрдВред рдЗрд╕ рд╕рдВрдкрддреНрддрд┐ рдХреЗ рдореВрд▓реНрдп рдХреЗ рд╕рд╛рде
ng-show
рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдЗрд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк
ng-hide
рдирд┐рд░реНрджреЗрд╢ рдореВрд▓ рд╕рдВрдЧреНрд░рд╣,
$scope
рдФрд░ DOM рдХреЗ рд╕рдмрд╕реЗрдЯ рд╕реЗ рддрддреНрд╡реЛрдВ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдХреЗрд╡рд▓ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╡рд░реНрдЧ рдЬреЛрдбрд╝ рджреЗрдЧрд╛ред
7. рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ рдкреНрд░реЙрдореНрдкреНрдЯ рд╕реЗрдЯ рдХрд░рдирд╛: рдЗрдирдкреБрдЯ рдбреЗрдЯрд╛ рдХреЛ рдЕрдЧреНрд░реЗрд╖рд┐рдд рдХрд░рдирд╛
рдХреНрд▓реЙрдЬ 6 рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдмрд╛рд░-рдмрд╛рд░ рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ рдХреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдФрд░ рддрд░реАрдХрд╛ рд╣реИ, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдирдкреБрдЯ рднреЗрдЬрдирд╛ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд┐рд╕реА рдЦреЛрдЬ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдкреНрд░рд╡реЗрд╢ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдлрд╝рд┐рд▓реНрдЯрд░ рдХреЛ рд╕рдХреНрд░рд┐рдп рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред
рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рдЙрджрд╛рд╣рд░рдг рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд
рд╕реЗрд╡рд╛ рд╣реИ ред рдЗрд╕реЗ рдЕрдкрдиреЗ рд╡рд┐рдЪрд╛рд░ рдФрд░ рдирд┐рдпрдВрддреНрд░рдХ рдореЗрдВ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ:
/* */ <input ng-model="queryInput"/> <li ng-repeat= item in items | filter:filter.query>{{ item.title }} </li>
рдЖрдЧреЗ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП
- рд╡рд┐рд╢рд╛рд▓ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕рдВрдЧрдарди
- рдПрдВрдЧреБрд▓рд░ рдореЗрдВ рдбреЗрдЯрд╛ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рд╕рд╡рд╛рд▓ рдХрд╛ рдорд┐рд╕рдХреЛ рд╣реЗрд╡рд░реА рд╕реНрдЯреИрдХрдСрд╡рд░рдлреНрд▓реЛ рдЬрд╡рд╛рдм рджреЗрддрд╛ рд╣реИ
- рдПрдирдЬреА-рджреЛрд╣рд░рд╛рдиреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдмреЗрд╣рддрд░ рдмрдирд╛рдиреЗ рдХреЗ рд╡рд┐рднрд┐рдиреНрди рддрд░реАрдХреЛрдВ рдкрд░ рд▓рдШреБ рд▓реЗрдЦ
- рдорд╛рдВрдЧ рдкрд░ рдмрдбрд╝рд╛ рдбреЗрдЯрд╛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ
- рдЕрдЪреНрдЫрд╛ рд╕реНрдХреЛрдк рдЖрд░реНрдЯрд┐рдХрд▓
- рдЧрддрд┐рд╢реАрд▓ рдЯреЗрдореНрдкрд▓реЗрдЯреНрд╕ рдХреЗ рд▓рд┐рдП AngularJS рдкрд░рд┐рдпреЛрдЬрдирд╛
- рдбреЗрдЯрд╛ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдХреЗ рдмрд┐рдирд╛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВ