У меня есть следующий код:
angular
.module('myApp')
.directive('layout', function () {
return {
restrict: 'E',
template: '<div ng-include="layoutCtrl.pageLayout"></div>',
controller: 'LayoutController',
controllerAs: 'layoutCtrl',
bindToController: true,
scope: {
pageLayout: '=',
pageConfiguration: '=',
isPreview: '='
}
};
});
angular
.module('myApp')
.controller('LayoutController', LayoutController);
function LayoutController($scope, LayoutDTO, LayoutPreviewDTO) {
var self = this;
self.layoutDTO = LayoutDTO;
self.layoutPreviewDTO = LayoutPreviewDTO;
var test = $scope;
if(self.isPreview)
self.layoutModel = new self.layoutPreviewDTO(self.pageConfiguration);
else
self.layoutModel = new self.layoutDTO(self.pageConfiguration);
}
<div>
<layout page-layout="ctrl.layoutTemplateUrl" page-configuration="ctrl.pageConfiguration" is-preview="false"></layout>
</div>
В версии angular 1.5.3 это работало, как и ожидалось, переменные в моем контроллере поступали со значениями. Теперь, когда я обновился до 1.6.x, self.pageConfiguration теперь не определен.
Ничего не изменилось, кроме угловой версии.
Как мне получить дескриптор значений, переданных в директиву в моем контроллере?
ng
нативные модули до той же версии angular? - person Alon Eitan   schedule 24.02.2017edit
. Нажмите на нее и обновите ответ. - person Alon Eitan   schedule 24.02.2017