FormControlを使用してMat入力に値を設定しようとしています
<input name="contact" matInput [matAutocomplete]="contactAuto" [formControl]="myControl" #contact (blur)="validateInput($event, contact.value)" >
私のTs
myControl = new FormControl();
this.myControl.value = 'contact';
上記のコードは正常に動作していますが、エラーが発生します
Cannot assign to 'value' because it is a constant or a read-only property
ここで何か不足していますか?
あなたがしようとしているように値を設定することはできません。 setValueメソッドまたはpatchValueメソッドを使用する必要があります。
https://angular.io/api/forms/FormControl#setvalue
https://angular.io/api/forms/FormControl#patchvalue
FormControlの場合、これらは同じですが、これらのメソッドはFormGroupとは異なる動作をします。
それは値を設定する方法ではありません。設定する正しい方法は setValue() または patchValue() を使用することです
this.myControl.setValue('contact');
手動で無効にするための問い合わせフォームに関しては、これは私のために機能しましたthis.contactForm.setErrors({ valid: false });