Переменные ссылки шаблона указывают на компоненты, а не на элементы html .
Это означает, что то, что вы фактически получаете с @ViewChild
, является экземплярами этих компонентов (IonInputComponent
,IonTextComponent
) и не ElementRef
.
countryRef: IonInputComponent // instead of ElementRef
personRef: IonTextComponent // instead of ElementRef
Таким образом countryRef.nativeElement // undefined
.
Если вы хотите изменить стили динамически, попробуйте подключитькомпоненты и настройте ссылочные переменные шаблона таким образом, чтобы они указывали на элементы HTML, которые связывают действительные ионные компоненты.
например,
<ion-content>
<span #country>
<ion-input type="text" placeholder="Enter country name"></ion-input>
</span>
<span #person>
<ion-text> steve </ion-text>
</span>
</ion-content>