Как установить ng-controller
как выражение из $scope
?
Согласно документации:
ngController — {выражение} — имя глобально доступной функции-конструктора или выражение, которое в текущей области оценивается как функция-конструктор.
Но как оценить выражение области действия в качестве контроллера для контроллеров, зарегистрированных с помощью модуля .controller
?
Например:
Макет:
<div ng-controller="myExpr"></div>
JavaScript (определить контроллер):
app.controller('myCtrl', ['$scope', '$timeout', function () { ... }];
JavaScript (родительская область):
$scope.myExpr = ...;
Что должно быть в myExpr, чтобы использовать myCtrl в качестве контроллера через выражение?
Я пробовал $controller('myCtrl')
... не работает...
P.S. Если контроллер был определен через глобально доступную функцию... его можно указать как myExpr. Но что делать, если он был определен именно так?
app.controller('myCtrl', [...])
возвращает результат, который может быть присвоен переменной и выражению области видимости. Тем не менее, я не понимаю, почему вы хотите сделать такую вещь... - person callmekatootie   schedule 27.06.2013Error: Argument 'ctrl' is not a function, got Object
Вы можете попробовать: jsbin.com/otakaw/8/edit - person ValeriiVasin   schedule 27.06.2013ng-repeat
. Элементы для ng-repeat извлекаются через службыFilter
илиGroup
, которые работают с разными конечными точками. Контроллеры нужны потому, что у каждого элемента в цикле повторения есть наборы действий: переименовать, удалить и т.д... - person ValeriiVasin   schedule 27.06.2013