'tal vez otros de componentes o directivas aplicadas a esa etiqueta': ¿Cómo podemos obtener la lista completa de tipos posibles?
Ghetolay
Las directivas y componentes enumerados en directives: [...]el componente actual o en PLATFORM_DITECTIVESdonde coincide un selector. Puede usar stackoverflow.com/questions/35233572/… para investigar en una aplicación en ejecución.
Günter Zöchbauer
3
Esto solo admite tipos angulares que están asociados con un nodo. HTMLElementno es uno de ellos. ElementRefpermite acceder a HTMLElement usando `ElementRef.nativeElement.
Günter Zöchbauer
1
Simplemente probando todo tipo de cosas e investigando la fuente de Angular2.
Günter Zöchbauer
1
No puede cuando el elemento es un componente. Solo puede especificar lo que desea si usa@ViewChild(... read: ElementRef) ...
Respuestas:
Puede haber varias instancias de varios tipos asociados con la etiqueta de elemento con la
#myname
variable de plantilla.Para cada elemento hay un
ElementRef
yViewContainerRef
(quizás otros de componentes o directivas aplicadas a esa etiqueta).Si el elemento es un componente, entonces existe la instancia del componente.
También puede haber una o varias directivas aplicadas al elemento
Con
{read: SomeType}
usted indica qué tipo debe devolverse del elemento con la#myname
variable de plantilla.Si no proporciona el
read
parámetro,@ViewChild()
devuelve elElementRef
instancia si no hay ningún componente aplicado, o elread
.Consulte también ¿Cómo puedo seleccionar un elemento en una plantilla de componente?
fuente
directives: [...]
el componente actual o enPLATFORM_DITECTIVES
donde coincide un selector. Puede usar stackoverflow.com/questions/35233572/… para investigar en una aplicación en ejecución.HTMLElement
no es uno de ellos.ElementRef
permite acceder a HTMLElement usando `ElementRef.nativeElement.@ViewChild(... read: ElementRef) ...