如何清除 material 自动完成 angular 中所有加载的值?
How to clear all loaded values in material autocomplete angular?
我正在尝试清除另一个 mat-select 字段的 selectionchange 上的 material 输入字段中的所有加载值。我只能清除 selected 值,而不能清除输入字段 property
中的所有加载值。这是代码。
HTML:
<mat-form-field>
<mat-select formControlName="searchType" (selectionChange)="searchTypeChange()" placeholder="Search By">
<mat-option *ngFor="let st of searchTypes" [value]="st.value">
{{st.viewValue}}
</mat-option>
</mat-select>
</mat-form-field>
<mat-form-field *ngIf="searchForm.get('searchType').value==6" class="example-full-width">
<input matInput placeholder="PropertyID" [formControl] ="property" [matAutocomplete]="auto">
<mat-autocomplete #auto="matAutocomplete" autoActiveFirstOption>
<mat-option *ngFor="let option of propertyfilteredOptions | async" [value]="option">
{{option}}
</mat-option>
</mat-autocomplete>
</mat-form-field>
打字稿:
ngOnInit(): void {
this.searchForm=this.fb.group({
prop:this.property,
});
}
searchTypeChange(){
this.searchForm.get('prop').setValue('');
this.property.reset(); //this is not working
}
您正在尝试重置 FormControl。它不向 MatSelect 提供数据。它从订阅 -propertyfilteredOptions | async
获取数据。您需要将新值传递给 propertyfilteredOptions
Observable。
你也可以f.ex。只需将其更改为新的 Observable:
this.propertyfilteredOptions = new Observable([]);
我正在尝试清除另一个 mat-select 字段的 selectionchange 上的 material 输入字段中的所有加载值。我只能清除 selected 值,而不能清除输入字段 property
中的所有加载值。这是代码。
HTML:
<mat-form-field>
<mat-select formControlName="searchType" (selectionChange)="searchTypeChange()" placeholder="Search By">
<mat-option *ngFor="let st of searchTypes" [value]="st.value">
{{st.viewValue}}
</mat-option>
</mat-select>
</mat-form-field>
<mat-form-field *ngIf="searchForm.get('searchType').value==6" class="example-full-width">
<input matInput placeholder="PropertyID" [formControl] ="property" [matAutocomplete]="auto">
<mat-autocomplete #auto="matAutocomplete" autoActiveFirstOption>
<mat-option *ngFor="let option of propertyfilteredOptions | async" [value]="option">
{{option}}
</mat-option>
</mat-autocomplete>
</mat-form-field>
打字稿:
ngOnInit(): void {
this.searchForm=this.fb.group({
prop:this.property,
});
}
searchTypeChange(){
this.searchForm.get('prop').setValue('');
this.property.reset(); //this is not working
}
您正在尝试重置 FormControl。它不向 MatSelect 提供数据。它从订阅 -propertyfilteredOptions | async
获取数据。您需要将新值传递给 propertyfilteredOptions
Observable。
你也可以f.ex。只需将其更改为新的 Observable:
this.propertyfilteredOptions = new Observable([]);