Angular.js: рдпрджрд┐ рд╣рдо рдорд╛рди рд╕рд╛рдлрд╝ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рд╕рдВрдЦреНрдпрд╛ рдЗрдирдкреБрдЯ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 26 рдирд╡ре░ 2014  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: angular/angular.js

рдпрджрд┐ рд╣рдо рд╕рдВрдЦреНрдпрд╛ рдЗрдирдкреБрдЯ рдорд╛рди рдХреЛ рд╕рд╛рдлрд╝ рдХрд░рддреЗ рд╣реИрдВ (рдЗрд╕реЗ рдЦрд╛рд▓реА рдХрд░реЗрдВ) рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ рдлрд╝рд┐рд▓реНрдЯрд░ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рд╕рднреА рдорд╛рди рд╕реВрдЪреАрдмрджреНрдз рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдПред рдЕрднреА рдЕрдЧрд░ рд╣рдо рдЗрдирдкреБрдЯ рдмреЙрдХреНрд╕ рдореЗрдВ рдирдВрдмрд░ рдбрд╛рд▓рдХрд░ 5 рдХрд╣рддреЗ рд╣реИрдВ рддреЛ рдХреБрдЫ рдлрд╝рд┐рд▓реНрдЯрд░ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдпрд╣ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ 5 рд╕реЗ рдореЗрд▓ рдЦрд╛рдиреЗ рд╡рд╛рд▓реЗ рд╕рднреА рдбреЗрдЯрд╛ рдиреАрдЪреЗ рд╕реВрдЪреАрдмрджреНрдз рд╣реЛрддреЗ рд╣реИрдВред рдЕрдм рдЕрдЧрд░ рд╣рдо рдЗрдирдкреБрдЯ рдмреЙрдХреНрд╕ рдореЗрдВ рдорд╛рди рд╕рд╛рдлрд╝ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ рд╕рднреА рдорд╛рдиреЛрдВ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП (рдХреЛрдИ рдлрд╝рд┐рд▓реНрдЯрд░ рдирд╣реАрдВ) рд▓реЗрдХрд┐рди рдХреЛрдгреАрдп рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╢реВрдиреНрдп рдлрд╝рд┐рд▓реНрдЯрд░ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╕рдмрдХреБрдЫ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдПрдирдЬреА-рджреЛрд╣рд░рд╛рдирд╛ рдХреБрдЫ рднреА рд╕реВрдЪреАрдмрджреНрдз рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ)ред

рдЗрдирдкреБрдЯ рдкреНрд░рдХрд╛рд░ = "рд╕рдВрдЦреНрдпрд╛" рдПрдирдЬреА-рдореЙрдбрд▓ = "рдЖрдпреБ"

рдлрд╝рд┐рд▓реНрдЯрд░: рдЖрдпреБ

рдиреЛрдЯ: рдЯрд╛рдЗрдк = рдЯреЗрдХреНрд╕реНрдЯ рдЗрдирдкреБрдЯ рдХреЗ рд╕рд╛рде рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИ

forms low confusing bug

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

(рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдиреЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИ) рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рд╣реЛрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ input[number] рдлрд╝реАрд▓реНрдб рдЦрд╛рд▓реА рд╣реЛрдиреЗ рдкрд░ рдореЙрдбрд▓ рдХреЛ null рдЕрд╕рд╛рдЗрди рдХрд░рддрд╛ рд╣реИред

рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рдЖрдк рдЗрд╕рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рддреЗ рд╣реИрдВ, рдЙрд╕рдХреЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рдирд╛ рдЙрдЪрд┐рдд рд╣реИ (рдЖрдИрдПрдордУ), рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╣рдо рдЗрд╕реЗ рдХреИрд╕реЗ рд╕рдВрдмреЛрдзрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдЗрд╕реЗ рдлрд╝рд┐рд▓реНрдЯрд░ рд╕рд╛рдЗрдб рдкрд░ рдареАрдХ рдХрд░рдирд╛ рд╡рд╛рдВрдЫрдиреАрдп рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ null рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдорд╛рдиреНрдп рдорд╛рди рд╣реЛ рд╕рдХрддрд╛ рд╣реИ (рдФрд░ рд╣рдо рдЗрд╕реЗ рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рдирд╣реАрдВ рдорд╛рди рд╕рдХрддреЗ рд╣реИрдВ)ред рдЗрд╕реЗ NgModelController рдареАрдХ рдХрд░рдирд╛ рд╢рд╛рдпрдж рдПрдХ рд╡реНрдпрд╡рд╣рд╛рд░реНрдп рд╕рдорд╛рдзрд╛рди рднреА рдирд╣реАрдВ рд╣реИред

@ рдЕрдиреНрдп : рд╡рд┐рдЪрд╛рд░?

рдЗрд╕ рдмреАрдЪ, рдЖрдк рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдЗрддрдирд╛ рд╕реБрдВрджрд░ рдирд╣реАрдВ) рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб:

<input type="number" ng-model="search.posts" />
...
<div ng-repeat="user in users | filter:((search.posts===null)?undefined:search)">...</div

рдбреЗрдореЛ рдмреЗрд▓рд╛

рд╕рднреА 5 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

(рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдиреЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИ) рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рд╣реЛрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ input[number] рдлрд╝реАрд▓реНрдб рдЦрд╛рд▓реА рд╣реЛрдиреЗ рдкрд░ рдореЙрдбрд▓ рдХреЛ null рдЕрд╕рд╛рдЗрди рдХрд░рддрд╛ рд╣реИред

рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рдЖрдк рдЗрд╕рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рддреЗ рд╣реИрдВ, рдЙрд╕рдХреЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рдирд╛ рдЙрдЪрд┐рдд рд╣реИ (рдЖрдИрдПрдордУ), рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╣рдо рдЗрд╕реЗ рдХреИрд╕реЗ рд╕рдВрдмреЛрдзрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдЗрд╕реЗ рдлрд╝рд┐рд▓реНрдЯрд░ рд╕рд╛рдЗрдб рдкрд░ рдареАрдХ рдХрд░рдирд╛ рд╡рд╛рдВрдЫрдиреАрдп рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ null рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдорд╛рдиреНрдп рдорд╛рди рд╣реЛ рд╕рдХрддрд╛ рд╣реИ (рдФрд░ рд╣рдо рдЗрд╕реЗ рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рдирд╣реАрдВ рдорд╛рди рд╕рдХрддреЗ рд╣реИрдВ)ред рдЗрд╕реЗ NgModelController рдареАрдХ рдХрд░рдирд╛ рд╢рд╛рдпрдж рдПрдХ рд╡реНрдпрд╡рд╣рд╛рд░реНрдп рд╕рдорд╛рдзрд╛рди рднреА рдирд╣реАрдВ рд╣реИред

@ рдЕрдиреНрдп : рд╡рд┐рдЪрд╛рд░?

рдЗрд╕ рдмреАрдЪ, рдЖрдк рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдЗрддрдирд╛ рд╕реБрдВрджрд░ рдирд╣реАрдВ) рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб:

<input type="number" ng-model="search.posts" />
...
<div ng-repeat="user in users | filter:((search.posts===null)?undefined:search)">...</div

рдбреЗрдореЛ рдмреЗрд▓рд╛

рд╣рдо null рд▓реМрдЯрд╛рддреЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдкрд╛рд░реНрд╕рд░ рд╕реЗ undefined рд▓реМрдЯрд╛рдиреЗ рд╕реЗ рдкрд╛рд░реНрд╕ рддреНрд░реБрдЯрд┐ рд╕реЗрдЯ рд╣реЛ рдЬрд╛рддреА рд╣реИред рдПрдХ рдФрд░ рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдпрд╣ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдбрд┐рдЬрд╝рд╛рдЗрди рдирд╣реАрдВ рд╣реИред

@Narretz рдореИрдВ рдкреВрдЫрдиреЗ рд╡рд╛рд▓рд╛ рдерд╛ рдХрд┐ рд╣рдо undefined рдХреНрдпреЛрдВ рдирд╣реАрдВ рд▓реМрдЯрд╛рддреЗ :-)

рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдкреЛрд╕реНрдЯ рдереЛрдбрд╝реА рдкреБрд░рд╛рдиреА рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рдЬрд╛рдирдиреЗ рдореЗрдВ рдмрд╣реБрдд рдмреБрд░рд╛ рд╕рдордп рд▓рдЧрд╛, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЕрдкрдирд╛ рд╕рдорд╛рдзрд╛рди рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдЕрдкрдиреЗ рдЗрдирдкреБрдЯ рдлрд╝реАрд▓реНрдб рдореЗрдВ рдПрдХ oninput рдИрд╡реЗрдВрдЯ рдЬреЛрдбрд╝реЗрдВ рдФрд░ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдХреНрдпрд╛ рдЗрд╕ рдлрд╝реАрд▓реНрдб рдХрд╛ рдорд╛рди рдПрдХ рдЦрд╛рд▓реА рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╣реИ, рдпрджрд┐ рдРрд╕рд╛ рд╣реИ рддреЛ рдЗрдирдкреБрдЯ рдлрд╝реАрд▓реНрдб рдХреЗ рдорд╛рди рдХреЛ рд╣рдЯрд╛ рджреЗрдВ:
рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рд╣рдЯрд╛рдПрдВред getElementById ('рдЬреЛ рдХреБрдЫ рднреА')ред рдореВрд▓реНрдп;

рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ HTMLInputElement рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рд╡рд┐рдиреНрдпрд╛рд╕ рдпреЛрдЧреНрдп рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

landed1 picture landed1  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

jpsimons picture jpsimons  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

cmplank picture cmplank  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

nosideeffects picture nosideeffects  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

kishanmundha picture kishanmundha  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ