Я пытаюсь подключить две директивы, используя require
и разделяя родительский контроллер.угловой директивный контроллер «this» return undefined
Я делал это Gazillion раз в других проектах, но для жизни меня я не могу получить эту работу ...
Контроллер директива this
возвращается неопределенным, что в свою очередь делает его трудно передать методы в директиве ребенка ...
вот мой код для родительской директивы:
app.directive('defaultHeader',() => {
let defaultHeaderCtrl = ($scope, $element) => {
let containEl,
elHeight = 500;
console.log(this) // returns 'undefined'
function resizeElement(el, height) {
el[0].style.height = `${height}px`
}
if (_.isUndefined($scope.coverImgUrl)) {
resizeElement($element, elHeight);
} else {
}
};
return {
restrict: 'A',
scope: {
coverImgUrl: '='
},
controller: defaultHeaderCtrl
};
});
This fiddle показывает, что контроллер директивы this
должен возвращаться конструктор.
Вот некоторые контексты, если кто-нибудь интересуются:
- пользовательского интерфейс шаблон маршрутизатора является директивой элементом
<div default-header data="data"></div>
- щий маршрутизатор решает данные, а затем передает его через контроллер с директивой
спасибо помощь
ограничивать 'A' в директивном коде, но в вашем шаблоне вы используете директиву как элемент. –
спасибо @FidanHakaj - это был всего лишь пример кода, но я исправил его, чтобы лучше представить фактическую директиву. – geoctrl
Я открыл вашу скрипку и записывал 'Constructor {}', а не undefined –