рдХреЛрдгреАрдп рд╡рд░реНрдЧ рдХреЗ рд╕рд╛рде рд╣рд▓реНрдХреЗ рдирд┐рдпрдВрддреНрд░рдХреЛрдВ

рдирд┐рдпрдВрддреНрд░рдХреЛрдВ рдХреА рд╕рдВрд░рдЪрдирд╛ рдХреЛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЬрд┐рдЬреНрдЮрд╛рд╕реБ рдЙрдкрдХрд░рдг рдорд┐рд▓рд╛ - рдХреЛрдгреАрдп рдЙрддреНрддрдо рджрд░реНрдЬреЗ рдХрд╛ ред рдпрд╣ 1 рдХрд┐рд▓реЛрдмрд╛рдЗрдЯ (gzipped рдФрд░ minified) рдореЙрдбреНрдпреВрд▓ рд╣реИ, рдФрд░ рдирд┐рдпрдВрддреНрд░рдХ рдХреЛ рдПрдХ рд╡рд╕реНрддреБ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рдХрдИ рдЙрдкрдпреЛрдЧреА рдЙрдкрд╣рд╛рд░ рднреА рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдХрд╣рд╛рдиреА рдХрдЯ рдХреЗ рдиреАрдЪреЗ рд╣реИред










рд╕рдВрд░рдЪрдирд╛



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






рдирд┐рд░реНрднрд░рддрд╛ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ



рдЬрд┐рди рд▓реЛрдЧреЛрдВ рдиреЗ рдХреЛрдгреАрдп рдХреЛрдб рдХреЛ рдЫреЛрдЯрд╛ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рдЙрдиреНрд╣реЗрдВ рдкрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕рдХреЗ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрднрд░рддрд╛ рдПрдиреЛрдЯреЗрд╢рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рд╡рд╛рд▓рд╛ рдореВрд▓ рдХреЛрдб рдХреБрдЫ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ:



app.controller('AppCtrl', ['$scope', '$location', '$http', function($scope, $location, $http) { // ... }]);
      
      





рдЗрд╕ рддрдереНрдп рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХрд┐ рдЗрд╕ рддрд░рд╣ рдХрд╛ рдПрдиреЛрдЯреЗрд╢рди рдЙрдмрд╛рдК рд╣реИ, рдпрд╣ рдХрд┐рд╕реА рднреА рддрд░рд╣ рдмрд╣реБрдд рдирд╣реАрдВ рджрд┐рдЦрддрд╛ рд╣реИ ... рдЙрддреНрддрдо рджрд░реНрдЬреЗ рдХреЗ рд╕рд╛рде, рдЪреАрдЬреЗрдВ рдЕрд▓рдЧ рд╣реИрдВ:



 app.classy.controller({ name: 'AppCtrl', inject: ['$scope', '$location', '$http'], //... });
      
      








рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ $ рдЧреБрдВрдЬрд╛рдЗрд╢



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



 $scope.editTodo = function(todo) { //... }
      
      





рдЙрддреНрддрдо рджрд░реНрдЬреЗ рдХреЗ рд╕рд╛рде рдпрд╣ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:



 editTodo: function(todo) { //... }
      
      





рдФрд░ рдЕрдЧрд░ рдЖрдк рдЗрд╕ рдпрд╛ рдЙрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЛ $ рд╕реНрдХреЛрдк рдореЗрдВ рдирд╣реАрдВ рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕рдХреЗ рдирд╛рдо рдореЗрдВ рдЙрдкрд╕рд░реНрдЧ рдХреЗ рд░реВрдк рдореЗрдВ "_" рдЪрд┐рдиреНрд╣ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред



рд▓рдШреБ рд░рд┐рдХреЙрд░реНрдб $ рдЧреБрдВрдЬрд╛рдЗрд╢



$ рдЧреБрдВрдЬрд╛рдЗрд╢ рдЧреБрдгреЛрдВ рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдмрд╕ this.$.foo = 'bar';



рддрдХ рдкрд╣реБрдБрдЪ рд╕рдХрддреЗ рд╣реИрдВ this.$.foo = 'bar';



рдЗрд╕рдХреЗ рдмрдЬрд╛рдп this.$scope.foo = 'bar';



ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ this.$scope



рднреА рдордирд╛ рдирд╣реАрдВ рд╣реИред






$ рдШрдбрд╝реА рдХреЗ рд╢реНрд░реЛрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖ рд╡рд╕реНрддреБ



рдХреЙрд▓ $scope.$watch



рд╕рд╛рде init рдореЗрдердб рдХреЛ $scope.$watch



рд╕рд╛рде рдмрдВрдж рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп $scope.$watch



, рдХреНрд▓рд╛рд╕реА рдиреЗ рдЙрдиреНрд╣реЗрдВ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рддрд╣ рдХрд░рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛:



 watch: { 'location.path()': function(newValue, oldValue) { // ... }, '{object}todos': function (newValue, oldValue) { // ... } }
      
      





рджреВрд╕рд░реЗ рд╢реНрд░реЛрддрд╛ рдХреЗ рдирд╛рдо рдкрд░ {object}



рдиреЛрдЯ рдХрд░реЗрдВред рдРрд╕рд╛ рд░рд┐рдХреЙрд░реНрдб рдЖрдкрдХреЛ рд╢реНрд░реЛрддрд╛ рдХреЗ рдкреНрд░рдХрд╛рд░ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рддреЛ, {collection}



рдпрд╛ {shallow}



рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдЗрдВрдЧрд┐рдд рдХрд░реЗрдЧреА рдХрд┐ $watchCollection()



рдХреЛ рдСрдмреНрдЬреЗрдХреНрдЯ рдкрд░ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдХреНрд▓рд╛рд╕реА рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рд╕рдВрднрд╛рд╡рд┐рдд рдореВрд▓реНрдпреЛрдВ рдХреА рдкреВрд░реА рд╕реВрдЪреА рдкрд╛рдИ рдЬрд╛ рд╕рдХрддреА рд╣реИред






рдФрд░ рд╡рд╣ рд╕рдм рд╕реБрд╡рд┐рдзрд╛рдПрдВ рдирд╣реАрдВ рд╣реИрдВ рдЬреЛ рдХрд┐ рдХреНрд▓рд╛рд╕реА рдХреЗ рдкрд╛рд╕ рд╣реИрдВ!

рдХреГрдкрдпрд╛ рд░реБрдЪрд┐ рд░рдЦрдиреЗ рд╡рд╛рд▓реЗ рд▓реЛрдЧ рдкрдврд╝реЗрдВ ред



All Articles