2013-11-07 5 views
0
Ссылки на

Я не смог найти в документации, если можно ссылаться на контроллер, используя подобный синтаксис, который используется для ссылочных модулей:Контроллеры

angular.module('App').controller('Ctrl'); 

Это не похоже на работу!

Это в угловом 1.2

ответ

0

Здесь есть ссылки на документацию http://docs.angularjs.org/guide/controller

В пункте с названием «Добавление поведения в области объекта» вы можете увидеть пример того, как использовать синтаксис, как вы дали выше.

JS

var myApp = angular.module('myApp',[]); 

myApp.controller('DoubleCtrl', ['$scope', function($scope) { 
    $scope.double = function(value) { return value * 2; }; 
}]); 

HTML

<body ng-app="myApp"> 
    <div ng-controller="DoubleCtrl"> 
     Two times <input ng-model="num"> equals {{ double(num) }} 
    </div> 
</body> 
+0

Не думаю, что я правильно объяснил свою проблему. Мне нужно передать контроллер на службу. Мне нужна ссылка на этот контроллер, который существует в другом файле. Я не хочу требовать файл. –

+0

Вам нужен контроллер или объем этого контроллера? –

0

Я не думаю, что есть много причин для создания контроллеров в сфере услуг, иных, чем для целей шаблонных, но Конечно, вы можете!

Вы можете использовать службу $controller для создания экземпляров контроллеров по требованию. Если для контроллера требуется $scope, вам необходимо передать его в качестве локального: $controller("MyController", { $scope: otherScope.$new() }). AngularJS делает бит $scope для вас, когда контроллер создается внутри.

См. $controller для (слегка) подробнее.

Смежные вопросы