2014-11-21 3 views
0

Я сделал директиву AngularJS, которая работает в AngularJS 1.2, но после обновления моего приложения до AngularJS 1.3 четвертый параметр моей функции ссылок больше не содержит массив экземпляров контроллера, но массив из $ get.Constructor {} элементов.

jtApp.directive("jtWizard", ["$q", "$timeout", function ($q, $timeout) { 
    return { 
     require: ["^ngController", "jtWizard"], 
     restrict: "E", 
     replace: false, 
     transclude: true, 
     templateUrl: "App/Components/wizard.htm", 
     scope: { 
      mainHeader: "@" 
     }, 
     controller: "jtWizardController", 
     link: function postLink(scope, elm, attrs, controllers, transcludeFn) { 
      ... 
      var userWizardController = controllers[0]; 
      var jtWizardController = controllers[1]; 
      ... 
     } 
); 

Любые идеи об этом?

ответ

0

1.3 изменяет порядок создания управляющих контроллеров, теперь контроллеры имеют значения Constructor, я считаю, что это побочный эффект фиксации 5f3f25a1. Это также означает, что вы не можете вернуть объект для определения контроллера, а должны напрямую изменять элементы контроллеров.

controller: function() { this.foo = "bar"; } 

вместо

controller: function() { return { foo: "bar" }; } 

Функциональность должна иначе обратной совместимостью.

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