diff --git a/js/angular/controller/navViewController.js b/js/angular/controller/navViewController.js index 88d693c6fca..05bc2de5653 100644 --- a/js/angular/controller/navViewController.js +++ b/js/angular/controller/navViewController.js @@ -267,6 +267,9 @@ function($scope, $element, $attrs, $compile, $controller, $ionicNavBarDelegate, if (viewLocals && viewLocals.$$controller) { viewLocals.$scope = viewScope; var controller = $controller(viewLocals.$$controller, viewLocals); + if (viewLocals.$$controllerAs) { + viewScope[viewLocals.$$controllerAs] = controller; + } $element.children().data('$ngControllerController', controller); } diff --git a/test/unit/angular/controller/navViewController.unit.js b/test/unit/angular/controller/navViewController.unit.js index caf2010b897..3aab24ee6ea 100644 --- a/test/unit/angular/controller/navViewController.unit.js +++ b/test/unit/angular/controller/navViewController.unit.js @@ -81,5 +81,26 @@ describe('$ionicNavView controller', function() { expect(navBarCtrl.title()).toBe('My title'); })); + it('should support controllerAs syntax', inject(function($rootScope, $compile) { + var containerEle = angular.element('