web-dev-qa-db-fra.com

La propriété 'value' n'existe pas sur le type 'ElementRef'

J'ai essayé de définir la valeur de #name1 comme indiqué ci-dessous. Mais il montre une erreur de temps de compilation comme indiqué ci-dessous. Pouvez-vous me dire comment définir la valeur du composant text? Ici, j'utilise la liaison de données à sens unique et l'approche basée sur des modèles.

[ts] La propriété 'value' n'existe pas sur le type 'ElementRef'.

. html

<ion-input type="text" name="{{question?.name}}" #name1="ngModel" ngModel> </ion-input>

. ts

  @ViewChild('name1') name1: ElementRef;

  constructor(){

   }

 getAnswer(){
     this.name1.value = 'Hello';//here it shows the above error
  }
14
Sampath

Utilisez le type de composants au lieu d'une variable de modèle

@ViewChild(TextInput) name1: TextInput;

Cela pourrait également fonctionner (je ne connais pas Ionic). Cela fonctionnerait avec un élément d'entrée HTML natif, mais ci-dessus est le moyen préféré s'il s'agit d'un composant Angular.

this.name1.nativeElement.value = 'Hello';
18