From cd38cbf975b501d846e6149d1d993972a1af0053 Mon Sep 17 00:00:00 2001 From: Misko Hevery Date: Wed, 6 Jun 2012 15:54:40 -0700 Subject: feat(controller): support as instance syntax Support ng-controller="MyController as my" syntax which publishes the controller instance to the current scope. Also supports exporting a controller defined with route: ````javascript angular.module('routes', [], function($routeProvider) { $routeProvider.when('/home', {controller: 'Ctrl as home', templateUrl: '...'}); }); ```` --- test/ng/controllerSpec.js | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'test/ng/controllerSpec.js') diff --git a/test/ng/controllerSpec.js b/test/ng/controllerSpec.js index 2abcace9..e34463b0 100644 --- a/test/ng/controllerSpec.js +++ b/test/ng/controllerSpec.js @@ -88,4 +88,15 @@ describe('$controller', function() { expect(ctrl.$scope).toBe(scope); }); + + + it('should publish controller instance into scope', function() { + var scope = {}; + + $controllerProvider.register('FooCtrl', function() { this.mark = 'foo'; }); + + var foo = $controller('FooCtrl as foo', {$scope: scope}); + expect(scope.foo).toBe(foo); + expect(scope.foo.mark).toBe('foo'); + }); }); -- cgit v1.2.3