Hi Nikk, This is the Polymer mailing list, so we're a little short on Angular experts.
I think you'd have better luck over on the Angular mailing list: https://groups.google.com/forum/#!forum/angular Good luck! Cheers, Arthur On Fri, May 8, 2015 at 2:04 AM, <[email protected]> wrote: > Hi, I posted an issue on github trying to get some users to help but they > seem to be confused as to what's going on, as I am. > > Link to that, and the feedback I've gotten: > http://stackoverflow.com/questions/30117637/angularjs-injecting-scope-without-into-a-controller > > Original post: > > In the Material Design mdDialog documentation > <https://material.angularjs.org/#/api/material.components.dialog/service/$mdDialog>, > I’ve noticed that they’ve passed a scope (without a prefixed dollar sign) > to the DialogController near the bottom. > > (function(angular, undefined){ > "use strict"; > angular > .module('demoApp', ['ngMaterial']) > .controller('AppCtrl', AppController); > function AppController($scope, $mdDialog) { > var alert; > $scope.showAlert = showAlert; > $scope.showDialog = showDialog; > $scope.items = [1, 2, 3]; > // Internal method > function showAlert() { > alert = $mdDialog.alert({ > title: 'Attention', > content: 'This is an example of how easy dialogs can be!', > ok: 'Close' > }); > $mdDialog > .show( alert ) > .finally(function() { > alert = undefined; > }); > } > function showDialog($event) { > var parentEl = angular.element(document.body); > $mdDialog.show({ > parent: parentEl, > targetEvent: $event, > template: > '<md-dialog aria-label="List dialog">' + > ' <md-dialog-content>'+ > ' <md-list>'+ > ' <md-list-item ng-repeat="item in items">'+ > ' <p>Number {{item}}</p>' + > ' '+ > ' </md-list-item></md-list>'+ > ' </md-dialog-content>' + > ' <div class="md-actions">' + > ' <md-button ng-click="closeDialog()" class="md-primary">' + > ' Close Dialog' + > ' </md-button>' + > ' </div>' + > '</md-dialog>', > locals: { > items: $scope.items > }, > controller: DialogController > }); > function DialogController(scope, $mdDialog, items) { > scope.items = items; > scope.closeDialog = function() { > $mdDialog.hide(); > } > } > }})(angular); > > I've read that $ is a naming convention and a good way to make sure > variables don't get overwritten. Why is this code failing to follow that > convention? I.e in this context, how do we know when to use $ or not, and > what is the significance? I believe in this case it must be more than just > the naming convention, or the authors would have chosen to use $scope for > purposes of consistency. > > NOTE: I am aware of the difference between $scope and scope in linking > functions, where scope is pointing to a fixed set of parameters. I do not > believe that is why scope is used in this context, but feel free to let > me know if I am wrong. > > I am thinking that this is how promises are returned from mdDialog? Is > that the case, or is that not how it works at all? > > > > Thanks for any help. > > Follow Polymer on Google+: plus.google.com/107187849809354688692 > --- > You received this message because you are subscribed to the Google Groups > "Polymer" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/polymer-dev/55b516a1-bdda-4efb-9537-b521765bbda9%40googlegroups.com > <https://groups.google.com/d/msgid/polymer-dev/55b516a1-bdda-4efb-9537-b521765bbda9%40googlegroups.com?utm_medium=email&utm_source=footer> > . > For more options, visit https://groups.google.com/d/optout. > Follow Polymer on Google+: plus.google.com/107187849809354688692 --- You received this message because you are subscribed to the Google Groups "Polymer" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/polymer-dev/CADSbU_zLNtE4ch72sqwbP6r%2Baf2bVWMnom5y93RzoFeyorrrTg%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
