AngularJS (рдЙрдВрдЧрд▓рд┐рдпреЛрдВ рдкрд░) рдХрд╛рд░рдЦрд╛рдиреЗ рдФрд░ рдкреНрд░рджрд╛рддрд╛ рдХреЗ рдмреАрдЪ рдХреНрдпрд╛ рдЕрдВрддрд░ рд╣реИ

рдПрдХ рдмрд╛рд░ рдореИрдВрдиреЗ рд▓реЗрдЦ рдХрд╛ рдЕрдиреБрд╡рд╛рдж рдХрд┐рдпрд╛ "AngularJS (рд╕реНрдерд┐рд░, рдореВрд▓реНрдп, рдХрд╛рд░рдЦрд╛рдирд╛, рд╕реЗрд╡рд╛, рдкреНрд░рджрд╛рддрд╛) рдореЗрдВ рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЛ рд╕рдордЭрдирд╛" ред рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ, рдЬрд╝рд╛рд╣рд┐рд░ рд╣реИ, рд╕рдм рдХреБрдЫ рдХрд╛рдо рдирд╣реАрдВ рдЖрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХреЛрдгреАрдп рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджрд╣рд▓реАрдЬ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рдврд╛рдВрдЪреЗ рдХреЗ рднреАрддрд░, рдореИрдВ рдФрд░ рдЕрдзрд┐рдХ рд╕рд░рд▓рддрд╛ рд╕реЗ рд╕рдордЭрд╛рдКрдВрдЧрд╛ред



рдПрдВрдЧреБрд▓рд░ рдореЗрдВ рдХрд╛рд░рдЦрд╛рдиреЗ рдирд╣реАрдВ рд╣реИрдВред рдХреЗрд╡рд▓ рдкреНрд░рджрд╛рддрд╛ рд╣реИрдВред рдпрд╣ рдЗрд╕ рддрд░рд╣ рд▓рд┐рдЦрд╛ рд╣реИ:



app.provider('$helloWorld', function() { return { world: 'World', $get: function($hello) { return $hello + this.world; } } });
      
      







рдЙрд╕рдХреЗ рдмрд╛рдж, Angular $ get рд╡рд┐рдзрд┐ рд╕реЗ рдПрдХ рд╕реЗрд╡рд╛ рдмрдирд╛рдПрдЧрд╛:



 $helloWorld = function($hello) { return $hello + this.world; }
      
      







рдФрд░ рдЗрд╕рдХреЗ рдкреНрд░рджрд╛рддрд╛ рд╢реЗрд╖ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП:



 $helloWorldProvider = { world: 'World' }
      
      







рд╣рдо рд╕реЗрд╡рд╛ (рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЪрд░рдг рдореЗрдВ) рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рджрд╛рддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ:



 app.config(function($helloWorldProvider) { $helloWorldProvider.world = 'Piter'; })
      
      







рд╕реЗрд╡рд╛ рд╣реА - рдЖрд╡реЗрджрди рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж:



 app.controller('MainCtrl', function($scope, $helloWorld) { $scope.title = $helloWorld; // $hello + 'Piter' });
      
      







рдорд╛рди рд▓реЗрдВ рдХрд┐ рд╣рдореЗрдВ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ:



 app.provider('$helloWorld', function() { return { $get: function($hello) { return $hello + 'World'; } } });
      
      







рд╣рдордиреЗ рдЬреЛ рджрд░реНрдЬ рдХрд┐рдпрд╛ рд╣реИ рд╡рд╣ рдПрдХ рдХрд╛рд░рдЦрд╛рдиреЗ рд╕реЗ рдЬреНрдпрд╛рджрд╛ рдХреБрдЫ рдирд╣реАрдВ рд╣реИред рдЗрд╕ рддрд░рд╣ рд▓рд┐рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:



 app.factory('$helloWorld', function($hello) { return $hello + 'World'; });
      
      







рдмреЗрд╢рдХ, рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдХреЛрдгреАрдп $helloWorldProvider



, рдХреЗрд╡рд▓ рдпрд╣ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рдмрд┐рдирд╛ рдЦрд╛рд▓реА рд╣реЛрдЧрд╛ред



рдирд┐рд╖реНрдХрд░реНрд╖: factory, service, value, constant



provider



рд▓рд┐рдП рд╕рд┐рдВрдЯреИрдХреНрдЯрд┐рдХ рдЪреАрдиреА рд╣реИрдВ




рдкреАрдПрд╕ $hello



рд╣рдорд╛рд░реА рд╕реЗрд╡рд╛ рдХрд╛ рдХреЗрд╡рд▓ рдПрдХ рдкреНрд░рдХрд╛рд░ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:



 app.factory('$hello', function() { return 'Hello'; });
      
      







рдкреАрдкреАрдПрд╕ рдзреЛрдЦрд╛ рд╢реАрдЯ



рдкреНрд░рджрд╛рддрд╛

 app.provider('$helloWorld', function() { return { world: 'World', $get: function($hello) { return $hello + this.world; } } });
      
      







рдлрд╝реИрдХреНрдЯрд░реА

 app.factory('$helloWorld', function($hello) { return $hello + 'World'; }); //  app.provider('$helloWorld', function() { return { $get: function($hello) { return $hello + 'World'; } } });
      
      







рд╕реЗрд╡рд╛

 app.service('$helloWorld', HelloWorldClass); //  app.provider('$helloWorld', function() { return { $get: function($hello) { return new HelloWorldClass($hello); } } });
      
      







рдореВрд▓реНрдп

 app.value('$helloWorld', {greating: 'Hello'}); //  app.provider('$helloWorld', function() { return { $get: function() { return {greating: 'Hello'}; } } });
      
      







рд╕реНрдерд┐рд░

 app.constant('$helloWorld', {world: 'Piter'}); //  app.provider('$helloWorld', function() { return { world: 'Piter', $get: function() { return this; // $get } } }); //  config    Provider app.config(function($helloWorld) { ... })
      
      







PPPS

 function HelloWorldClass($hello) { ... } app.service('$helloWorld', HelloWorldClass);
      
      





рдПрдВрдЧреБрд▓рд░ рдХреЛ рдпрд╣ рдХреИрд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдХреЛ рдХреМрди рд╕реЗ рдкреИрд░рд╛рдореАрдЯрд░ рдкрд╛рд╕ рдХрд░рдиреЗ рд╣реИрдВ? рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ HelloWorldClass



(рдФрд░ $get



рдореЗрдВ рдХреЛрдИ рднреА рдлрд╝рдВрдХреНрд╢рди) $injector.invoke(fn)



рдорд╛рдзреНрдпрдо рд╕реЗ рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдпрд╣ рдПрдХ рдРрд╕реА рдЪреАрдЬ рд╣реИ рдЬреЛ рдлрд╝рдВрдХреНрд╢рди рдХреЛрдб рдХреЛ рдкрдврд╝рддреА рд╣реИ, рдХреЛрд╖реНрдардХ рд╕реЗ рддрд░реНрдХ рдирд┐рдХрд╛рд▓рддреА рд╣реИ рдФрд░ рдЙрд╕реА рдирд╛рдо рдХреА рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рдЦреАрдВрдЪрддреА рд╣реИ (рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ $hello



) ред рд╕рдм рдХреБрдЫ рд╕рд░рд▓ рд╣реИ!



All Articles