Я новичок в Angular, но действительно наслаждаюсь его подходом. У меня есть файл HTML, где я инициализирую переменную с ng-init
в элементе <div>
, где я также объявляю контроллер с директивой ng-controller
:
<div ng-controller="myCtrl" ng-init='foo="bar"'>
Если я console.log
объект $scope
из контроллера script, я вижу свойство foo
, указанное среди других, но когда я пытаюсь получить к нему доступ из того же script, он дает мне undefined
. Я также использую Batarang, и он показывает мне модель для <div>
-scope, которая также включает свойство foo
.
Я знаю из второго ответа передать переменные контроллеру AngularJS, передовой практике?, чтобы решить эту проблему, переместив мою директиву ng-init
во внешнюю <div>
, но я хотел бы знать, что действительно происходит здесь за кулисами. Любая помощь очень ценится, спасибо заранее.
ИЗМЕНИТЬ
Порядок директив в элементе div
не имеет значения. Проблема все еще существует, даже если ng-init
указан до ng-controller