Thanks Sander, Good to know. I'll have a think about it, might start mixing `this` and `$scope` in different controllers and views to see which feels cleaner.
Best, On Fri, Jul 4, 2014 at 9:00 PM, Sander Elias <[email protected]> wrote: > Hi Alec, > > It depends mostly on personal preference. Both approaches have their own pre > en cons. > the controllerAs/this approach is more locally contained. This helps > portability, but it makes > it more difficult to use in a larger hierarchy. > > As a disclaimer, this is my personal view on this! > And now for my own fun, I will confuse you a bit more :-P If you don’t want > to, stop reading here! > > You have been warned! > > The this/controllerAs system works on top of the scope system. Let me give > you a small code sample: > > <div ng-controller='firstController as first'> > <div ng-controller='secondController as second'> > <h1> I'm a higly complex app!!! :-)</h1> > <div>ant the message is: {{message}}</div> > <button ng-click='second.proxyFirst()'>Reveal message</button> > </div> > </div> > > app.controller('firstController', function() { > //lo Ma, no scope! > this.msg = 'Hello world' > }) > > app.controller('secondController', ['$scope', > function($scope) { > this.proxyFirst = function() { > $scope.message = $scope.first.msg; > }; > } > ]); > > While this will work well (see this plunk), it clearly demonstrates that it > is easy to make a mess! > So don’t try this at home! > > Regards > Sander > > -- > You received this message because you are subscribed to the Google Groups > "AngularJS" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To post to this group, send email to [email protected]. > Visit this group at http://groups.google.com/group/angular. > For more options, visit https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups "AngularJS" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/angular. For more options, visit https://groups.google.com/d/optout.
