Я пытаюсь получить элемент ElementRef элемента, на котором я добавил пользовательский атрибут, используя директиву как ContentChild компонента, но я получаю undefined, когда я регистрирую его после того, как содержимое было инициализировано. Не могли бы вы рассказать мне, почему?Angular 2 ContentChild не определен
TestComponent:
@Component({
selector: 'test-component',
template: `
<h1>Test Component</h1>
<ng-content></ng-content>
`
})
export class TestComponent implements AfterContentInit {
@ContentChild(TestDirective) child;
ngAfterContentInit() {
console.log(this.child);
}
}
TestDirective:
@Directive({
selector: '[test-directive]'
})
export class TestDirective {
}
AppComponent:
@Component({
selector: 'my-app',
declarations: ['TestComponent'],
template: `
<h1>{{title}}</h1>
<test-component>
<h2 test-directive>Test Directive</h2>
</test-component>
`
})
export class AppComponent {
title = 'Hello123!';
}
Пожалуйста, обратитесь думать Plunk: https://plnkr.co/edit/9KUnFWjVIbYidUtF2Avf?p=preview