У меня есть компонент с:Угловое 2 находка QueryList в
@ViewChildren(MyDirective) factories: QueryList<MyDirective>;
, когда я хочу, чтобы найти элемент в QueryList
он работает:
ngAfterViewInit() {
let field1 = this.factories.find(factory => factory.meta.id == 'field1');
console.log(field1);
}
MyDirective {vcRef: ViewContainerRef_, loader: MyLoaderService, meta: Object}
Но когда я пытаюсь получить доступ имущество field1
:
ngAfterViewInit() {
let field1 = this.factories.find(factory => factory.meta.id == 'field1');
console.log(field1.property);
}
EXCEPTION: Uncaught (in promise): Error: Error in :0:0 caused by: Cannot read property 'property' of undefined
UPDATE:
Проблема я думаю, что существует из-за динамического формообразования. Here - плукер. В app.ts
У меня есть код, указанный выше.
Я обновил этот вопрос, спасибо –
Вы только пропустили 0,5%! ;) Взгляните на мой измененный ответ. – mxii
Хорошо, мне удастся как-то иначе, с setTimeout не очень хорошая практика –