Невозможно прочитать свойство 'nativeElement' из неопределенного @viewchild - PullRequest
0 голосов
/ 01 декабря 2018

вот сценарий, у меня есть основной компонент вкладок файла, где я включил текстовый компонент, используя @ViewChild ();Теперь на ngAfterViewInit () я инициализирую меню и список подменю.и как только я закончу создание списка подменю, я хочу назначить их текстовому компоненту.поэтому, когда пользователь нажимает на текстовый компонент, он будет видеть подкомпоненты, назначенные компонентом вкладок.

ngAfterViewInit() {
    // menu initialization
    // sub-menu initialization
    this.tabTextComponent.nativeElement.selectedSubTabs = this.selectedSubTabs;
}

Я пробовал как с элементом ref, так и без него, но ничего не работает.Я также посетил другие решения, но ничего не работает для меня.кто-нибудь может мне помочь?

1 Ответ

0 голосов
/ 01 декабря 2018

Может быть проблема с тем, как вы определяете this.tabTextComponent.Попробуйте это (при условии, что класс вашего компонента - TabTextComponent):

@ViewChild(TabTextComponent) tabTextComponent: TabTextComponent;

ngAfterViewInit() {
    // this.tabTextComponent should be defined here
    this.tabTextComponent.selectedSubTabs = this.selectedSubTabs;
}

Также обратите внимание, что вам не нужно использовать nativeElement, если вы не пытаетесь что-то сделать с DOM.Если selectedSubTabs является не приватным свойством класса TabTextComponent, вы можете получить к нему прямой доступ.

(Кстати, похоже, вы пытаетесь установить свойство дочернего компонента из родительского?вместо этого можно использовать привязку @Input.)

...