рдХреЛрдгреАрдп рдкреНрд░рдХрд╛рд╢ рдирд┐рд░реНрджреЗрд╢рдХреАрдп рд╡рд┐рд░рд╛рд╕рдд рдФрд░ рдЕрдиреНрдп рдЙрдкрд╣рд╛рд░

рд╣рд╛рд▓ рд╣реА рдореЗрдВ, Armin Ronacher рдХреЗ рдПрдХ рд▓реЗрдЦ рдХреЛ рдкрдврд╝рдиреЗ рдХреЗ рдмрд╛рдж, рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ рдХрд┐ рдирд┐рд░реНрджреЗрд╢рди рдФрд░ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛
рдЬрд▓реНрдж рд╣реА рдпрд╣ рдЕрдкрдиреЗ рдХреЛрдгреАрдп рдкреНрд░рдХрд╛рд╢ рдкреБрд╕реНрддрдХрд╛рд▓рдп ( рд▓рд╛рдЗрдЯ ) рдореЗрдВ рдорд╣рд╕реВрд╕ рдХрд┐рдпрд╛ред

рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рд╕рднреА рдЙрддреНрддрд░рд╛рдзрд┐рдХрд╛рд░ рдирд┐рд░реНрджреЗрд╢ рдХреЛ рдЙрди рд╡рд┐рдзрд┐рдпреЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрддреЗ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдкреБрдирд░реНрдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдпрд╣рд╛рдБ рдЕрд▓-рд╢реЛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдПрдХ рдЕрд▓-рд╢реЛ-рдзреАрдорд╛ рдЙрджрд╛рд╣рд░рдг рд╣реИ, рдЬрд╣рд╛рдВ рдПрдХ рддрддреНрд╡ рдзреАрд░реЗ-рдзреАрд░реЗ рдкреНрд░рдХрдЯ рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдЫрд┐рдкрддрд╛ рд╣реИ, рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:
alight.directives.al.showSlow = function(element, name, scope, env) { var dir = alight.directives.al.show(element, name, scope, env); //    dir.showDom = function() { //  "show" $(element).fadeIn(1000); } dir.hideDom = function() { //  "hide" $(element).fadeOut(1000); } return dir; } 

рдЕрд▓-рд╢реЛ рд╡рд┐рд░рд╛рд╕рдд рдЙрджрд╛рд╣рд░рдг
рдПрдХ рдЕрдиреНрдп рдЙрджрд╛рд╣рд░рдг рд╣реИ, рдЕрд▓-рд╡реИрд▓реНрдпреВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЕрд▓-рд╡реИрд▓реНрдпреВ-рдбрд┐рд▓реЗ , рдЬрд╣рд╛рдВ рдбреЗрдЯрд╛ рдореЙрдбрд▓ рдореЗрдВ рджреЗрд░реА (рдмрд┐рдирд╛ рджреЛрд╣рд░рд╛рдП) рдХреЗ рд╕рд╛рде рдЖрддрд╛ рд╣реИред

рдПрдХрд╛рдзрд┐рдХ рд╡рдВрд╢рд╛рдиреБрдХреНрд░рдо рднреА рдпрд╣рд╛рдВ рд╕рдВрднрд╡ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрднреА рддрдХ рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИред


рдпрд╣рд╛рдВ рдХреБрдЫ рдФрд░ рдЙрдкрдпреЛрдЧреА рддрд░реАрдХреЗ рджрд┐рдП рдЧрдП рд╣реИрдВ:

1) "рдлрдЯреЗ рд╣реБрдП" рдбреЛрдо рд╕реЗ рдмрд╛рдВрдзрдирд╛, рдЕрд░реНрдерд╛рддред рдПрдХ рдЬреЛ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдореЗрдВ рдирд╣реАрдВ рд╣реИ:
 tpl = $('<div al-init="i=0" al-click="i+=1">{{i}}</div>') //   DOM alight.applyBindings(null, tpl[0]) //   $('body').append(tpl) //     body 

2) рдирд┐рд░реНрджреЗрд╢ рдХрд╛ рдирд╛рдо рдмрджрд▓рдиреЗ рдХреА рдХреНрд╖рдорддрд╛, рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдХреИрд╕реЗ Angular.js рдореЗрдВ, рд▓реЗрдХрд┐рди рд╕рд╣реА рдорд╛рдпрдиреЗ рдореЗрдВ рдпрд╣ рд╕рд░рд▓ рд╣реИ:
 alight.directives.al.myKeypress = alight.directives.al.keypress 

3) Angular.js рдореЗрдВ, рдореБрдЭреЗ рдХрднреА-рдХрднреА рдПрдХ рд╕рд╡рд╛рд▓ рдерд╛ рдХрд┐ $ рдбрд╛рдЗрдЬреЗрд╕реНрдЯ / $ рд▓рд╛рдЧреВ рд╣реЛрдиреЗ рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж рдЕрдкрдиреЗ рдХреЛрдб рдХреЛ рдХреИрд╕реЗ рдХреЙрд▓ рдХрд┐рдпрд╛ рдЬрд╛рдП, рднрд▓реЗ рд╣реА $ рдбрд╛рдЗрдЬреЗрд╕реНрдЯ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рд╣реЛред $ рдкрдЪрд╛ рдХреЗ рдмрдЬрд╛рдп, рдПрдХ $ рд╕реНрдХреИрди рд╕рдорд╛рд░реЛрд╣ рд╣реИ, рдФрд░ рдЖрдк рдЗрд╕реЗ рдЗрд╕ рддрд░рд╣ рд╕реЗ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдЕрдкрдиреЗ рдХреЛрдб рдХреЛ рдХреЙрд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
 scope.$scan(function(){ // do something }) 

4) DOM рдореЗрдВ рд╕реНрдЯреЗрдЯрд┐рдХ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ, aLight рдореЗрдВ DOM рдореЗрдВ рдорд╛рдиреЛрдВ рдХреЛ рдмрд╛рдБрдзрдиреЗ рдХреЗ 2 рддрд░реАрдХреЗ рд╣реИрдВ:
  <a href="{{first}}">{{first}}</a> <a href="{{=second}}">{{=second}}</a> 
рдЕрдВрддрд░ рдпрд╣ рд╣реИ рдХрд┐ 2 рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдЪрд░ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХреА рдХреЛрдИ рдЯреНрд░реИрдХрд┐рдВрдЧ рдирд╣реАрдВ рд╣реИ, рдпрд╣ рдПрдХ рдирд┐рдпрдорд┐рдд, рдПрдХ рд╕рдордп рдкреНрд░рддрд┐рдкрд╛рджрди рдХреЗ рд░реВрдк рдореЗрдВ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИред

5) рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрд╕рд░реНрдЧред рдкреНрд░рддреНрдпреЗрдХ рдирд┐рд░реНрджреЗрд╢ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ "рдЦрдВрдб" рдореЗрдВ рд╣реИ: рдЕрд▓-рдЗрдл, рдмреЛ-рдЗрдл, рдпреВрдЖрдИ-рдЗрдл, рдЖрджрд┐ред рдпреЗ рдЕрдиреБрднрд╛рдЧ рдЖрдкрдХреЛ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВ (рдЬреИрд╕рд╛ рдХрд┐ рдиреЙрдХрдЖрдЙрдЯред рдЬреЗрдПрд╕ рдореЗрдВ), рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдпрджрд┐ рдореИрдВ рд▓рд┐рдЦрддрд╛ рд╣реВрдВ:
 <div al-ifn="visible"></div> 
рддрдм рд▓рд╛рдЗрдХ рдПрдХ рддреНрд░реБрдЯрд┐ рджреЗрдЧрд╛ рдХрд┐ рдРрд╕рд╛ рдХреЛрдИ рдирд┐рд░реНрджреЗрд╢ рдирд╣реАрдВ рд╣реИред

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

рдЖрдЬ рдХреЗ рдирд┐рд░реНрджреЗрд╢реЛрдВ рд╕реЗ рдХреБрдЫ рдФрд░ рдмрд╛рддреЗрдВ:

рдЕрд▓-рдХреАрдбрд╛рдЙрди, рдЕрд▓-рдореВрд╕рдореЛрд╡ рдЖрджрд┐ рдХреЗ рд▓рд┐рдП, $ рдШрдЯрдирд╛ рд╕реАрдзреЗ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИ, рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ рдХрд┐ рдпрд╣ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ:
 <input type="text" al-keydown="key = $event.keyCode" /> 

рдЕрд▓-рдХреЗрдВрджреНрд░рд┐рдд рдирд┐рд░реНрджреЗрд╢ рджреЛ рддрд░рд╣ рд╕реЗ рдмрд╛рдзреНрдпрдХрд╛рд░реА рдмрдирд╛рддрд╛ рд╣реИ - рдЬрдм рдЪрд░ рдХреЛ рдХреЗрдВрджреНрд░рд┐рдд = рд╕рддреНрдп рдкрд░ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдлреЛрдХрд╕ рддрддреНрд╡ рдкрд░ рд╕реЗрдЯ рд╣реЛрддрд╛ рд╣реИ, рдФрд░ рдЬрдм рддрддреНрд╡ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдЪрд░ рдХреЛ рд╕рд╣реА рдкрд░ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрдм рдлреЛрдХрд╕ рдЙрд╕реА рддрд░рд╣ рд╕реЗ рдЪрд▓рд╛ рдЬрд╛рддрд╛ рд╣реИред
 <input type="text" al-focused="focused" /> 
рдпрд╣рд╛рдВ рдПрдХ рдЙрджрд╛рд╣рд░рдг , рдкреГрд╖реНрда рд▓реЛрдб рдХрд░рддреЗ рд╕рдордп рдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рдХреНрд╖рдг рдкрд░ рдлрд╝реЛрдХрд╕ рд╕реЗрдЯ рдХрд░рдирд╛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ, рд▓реЗрдХрд┐рди рдпрджрд┐ рдХреБрдЫ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдЖрдк рдЗрд╕реЗ рдЗрдирд╣реЗрд░рд┐рдЯ рдФрд░ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВред

рд╡рд╣ рдореВрд▓ рд░реВрдк рд╕реЗ рдпрд╣ рд╣реИред рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдФрд░ рд╕реБрдЭрд╛рд╡реЛрдВ рдХрд╛ рд╕реНрд╡рд╛рдЧрдд рд╣реИред

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


All Articles