рдХреЛрдгреАрдп рдкреНрд░рдХрд╛рд╢ред HTML рдореЗрдВ рдШреЛрд╖рдгрд╛рддреНрдордХ рдбреЗрдЯрд╛ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рдирд╛

DOM рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдгреАрдп рдХреЗ 2 рдЙрдкрдХрд░рдг рд╣реИрдВ - рдпреЗ HTML {{рдореЙрдбрд▓}} рдореЗрдВ рдирд┐рд░реНрджреЗрд╢ рдФрд░ рдШреЛрд╖рдгрд╛рддреНрдордХ рдбреЗрдЯрд╛ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рд╣реИрдВред
рдЬрдмрдХрд┐ рдирд┐рд░реНрджреЗрд╢ рдмрд╣реБрдд рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рд╣реИрдВ, рдШреЛрд╖рдгрд╛рддреНрдордХ рдмрд╛рдзреНрдпрдХрд╛рд░реА рдереЛрдбрд╝рд╛ рд╕реАрдорд┐рдд рд╣реИ, рдпрд╣ рдлрд┐рд▓реНрдЯрд░ рдФрд░ рдХреЙрд▓ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХреЗ рд╕рд╛рде рдПрдХ рдореЙрдбрд▓ рдкрд░ $ рдШрдбрд╝реА рдмрдирд╛рддрд╛ рд╣реИ, рдФрд░ рдмрдбрд╝реЗ, рдХрд┐ рд╕рднреАред рдФрд░ рдореИрдВ рдФрд░ рдЕрдзрд┐рдХ рд▓рдЪреАрд▓рд╛рдкрди рдЪрд╛рд╣рддреЗ рд╣реИрдВред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдЖрдк Angular.js рдХреЗ рд▓рд┐рдП рдмрд╛рдЗрдВрдбреЛрдВрд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВ , рддреЛ рдореБрдЦреНрдп рд╡рд┐рдЪрд╛рд░ $ рдШрдбрд╝реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛ рд╕реВрдЪрдирд╛ рдХрд╛ рдПрдХ рдмрд╛рд░ рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ рд╣реИред
рдФрд░ рдЗрд╕реЗ рдХрд┐рд╕реА рднреА рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреЗ рд▓рд┐рдП рдХрд╣реАрдВ рднреА рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдбреЗрд╡рд▓рдкрд░ рдиреЗ рдХрдИ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдирд┐рд░реНрджреЗрд╢ рджрд┐рдП: рдмреЛ-рдЯреЗрдХреНрд╕реНрдЯ, рдмреЛ-рд╣рд╛рдИ-рдЖрдИ, рдмреЛ-рдПрдЪрдЖрд░рдПрдл, рдмреЛ-рдПрд╕рдХреЗрд╡реА-рдЖрдИ, рдмреЛ-рдПрд╕рдХреЗрд╕реА, рдмреЛ- рд╡рд░реНрдЧ, рдмреЛ-рдСрд▓, рдмреЛ-рдЯрд╛рдЗрдЯрд▓, рдмреЛ-рдЖрдИрдбреА, рдмреЛ-рд╕реНрдЯрд╛рдЗрд▓, рдмреЛ-рд╡реИрд▓реНрдпреВ, рдмреЛ-рдЕрдЯрд░ рдФрд░ рдмреЛ-рдЕрдЯрд░-рдлреВ ред рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╡реЗ рд╕рднреА рдПрдХ рд╣реА рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рддрд╛рд░реНрдХрд┐рдХ рд░реВрдк рд╕реЗ, рдпрд╣ рдПрдХ рдирд┐рд░реНрджреЗрд╢ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
рдпрд╣ Angular.js, рдЕрд░реНрдерд╛рддреН рдореЗрдВ рдШреЛрд╖рд┐рдд рдбреЗрдЯрд╛ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рд╕реЗ рднреА рд╡рд┐рдЪрд▓рд┐рдд рд╣реЛрддрд╛ рд╣реИред рдХреЗ рдмрдЬрд╛рдп
<a href="{{link}}">{{name}}</a> 
рд▓рд┐рдЦрдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ
 <a bo-href-i="{{link}}" bo-text="name"></a> 
рдпрд╛рдиреА рдХреНрдпреЛрдВ рдШреЛрд╖рдгрд╛рддреНрдордХ рдбреЗрдЯрд╛ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдХрд╛ рдЖрд╡рд┐рд╖реНрдХрд╛рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

рдЗрд╕рд▓рд┐рдП, рдШреЛрд╖рдгрд╛рддреНрдордХ рдбреЗрдЯрд╛ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдХреЗ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рдЪрд╛рд░ рдЖрдпрд╛ред
рдпрд╣ рдХреЛрдгреАрдп рдкреНрд░рдХрд╛рд╢ рдореЗрдВ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ - рдЖрдкрдХреЛ рдмрд╕ рдирд┐рд░реНрджреЗрд╢ рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рдкрд╣рд▓реЗ "#" рдЪрд┐рдиреНрд╣ рд▓рдЧрд╛рдПрдВред {{рдореЙрдбрд▓}} рдХреЗ рдмрдЬрд╛рдп {{#directive рдореЙрдбрд▓}} рд╣реЛрдЧрд╛ ред
рдПрдХ рдмреЗрдХрд╛рд░ рд▓реЗрдХрд┐рди рд╕рд░рд▓ рдХрд╛рдЙрдВрдЯрд░ рдЙрджрд╛рд╣рд░рдг:
 <div al-app> counter {{#counter model}} </div> 
рд╣рдо "рдореЙрдбрд▓" рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ "рдХрд╛рдЙрдВрдЯрд░" рдирд┐рд░реНрджреЗрд╢ рдХреЛ рдХрдиреЗрдХреНрдЯ рдХрд░рддреЗ рд╣реИрдВ, рд╕рд╛рджрдЧреА рдХреЗ рд▓рд┐рдП рдореИрдВрдиреЗ рдЗрд╕ рдирд┐рд░реНрджреЗрд╢рди рдореЗрдВ "рдореЙрдбрд▓" рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЛ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рд╣реИ:
 alight.text.counter = function(callback, expression, scope, env) { var n = 0; setInterval(function(){ n++; callback(n) // set result scope.$scan() // $digest }, 1000); } 
рдирд┐рд░реНрджреЗрд╢ рдХреЗ рдЗрдирдкреБрдЯ рдкрд░ рд╣рдо рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ:
рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЗрд╕рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг

рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдореЗрдВ рдПрдХ рдмрд╛рдЗрдВрдбрд┐рдЧ рдбрд╛рд▓рдиреЗ рдХреЗ рд╕рд╛рде рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИ, рдбрд╛рдпрд░реЗрдХреНрдЯрд┐рд╡ рд▓реЛрдбрд▓реЙрдЧрд┐рдирдмрд╛рдпрдб рдЬреЛ рд╕рд░реНрд╡рд░ рд╕реЗ рдбреЗрдЯрд╛ рд▓реЛрдб рдХрд░рдиреЗ рдХрд╛ "рдЕрдиреБрдХрд░рдг" рдХрд░рддрд╛ рд╣реИ:
 <div al-app al-init="user_id = '555'"> id = <input type="text" al-value="user_id" /> <br/> into href = <a href="http://example.com/?search={{#loadLoginById user_id}}">user's page</a> <br/> into title = <span title="{{#loadLoginById user_id}}">user</a> <br/> into text = {{#loadLoginById user_id}} </div> 
рдЙрджрд╛рд╣рд░рдг

рдФрд░ рдЕрдВрдд рдореЗрдВ, рдПрдХ рдЙрджрд╛рд╣рд░рдг рдмрд┐рдВрджреЛрдВ рдХреЗ рд╕рд╛рде, рдПрдХ рдирд┐рд░реНрджреЗрд╢ рдЬреЛ рдмрд╛рдБрдз-рдПрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╕реЗ 11 рдХреА рдЬрдЧрд╣ рд▓реЗрддрд╛ рд╣реИ:
 <div al-app al-init="link = 'google.com'"> id = <input type="text" al-value="link" /> <br/> usual, with $watch = <a href="http://{{link}}">{{link}}</a> <br/> bindonce = <a href="http://{{#bindonce link}}">{{#bindonce link}}</a> <br/> aliase of bindonce = <a href="http://{{=link}}">{{=link}}</a> <br/> </div> 
рдЙрджрд╛рд╣рд░рдг

рдпрджрд┐ рд╕реВрдЪрдирд╛ рдХреЗ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╕рдорд╛рдкрди рдХреЗ рд▓рд┐рдП рдШреЛрд╖рдгрд╛рддреНрдордХ рдмрдВрдзрди рдХреЛ рд╕реЛрдЪрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрдпреЛрдВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ?

Source: https://habr.com/ru/post/In209108/


All Articles