Потрібна допомога, щоб зрозуміти значення {read: ViewContainerRef} у наступному висловлюванні.
@ViewChild('myname', {read: ViewContainerRef}) target;
Потрібна допомога, щоб зрозуміти значення {read: ViewContainerRef} у наступному висловлюванні.
@ViewChild('myname', {read: ViewContainerRef}) target;
Відповіді:
З тегом елемента зі #myname
змінною шаблону може бути кілька екземплярів різних типів .
Для кожного елемента є ElementRef
і ViewContainerRef
(можливо, інші з компонентів або директив, що застосовуються до цього тегу).
Якщо елемент є компонентом, то існує екземпляр компонента.
Також може бути одна або кілька директив, що застосовуються до елемента
З {read: SomeType}
вами сказати , який тип повинен бути повернутий із елемента з #myname
перемінним шаблоном.
Якщо ви не вказали read
параметр, @ViewChild()
повертає
ElementRef
наприклад, якщо не застосовано жодного компонента, або read
.directives: [...]
поточному компоненті або PLATFORM_DITECTIVES
там, де селектори відповідають. Ви можете використовувати stackoverflow.com/questions/35233572/… для дослідження запущеної програми.
HTMLElement
не належить до них. ElementRef
дозволяє отримати доступ до HTMLElement за допомогою ʻElementRef.nativeElement.
@ViewChild(... read: ElementRef) ...