我想使用select HTML元素来过滤表中的项目。为此,我具有更改事件的模型值selectedCategoryId
和事件回调onFilterCategory
。但是,当回调被调用时,selectedCategoryId
的值为null
。
我有以下HTML代码段:
<select id="category"
class="form-control"
[(ngModel)]="selectedCategoryId"
(change)="onFilterCategory()">
<option *ngFor="let category of categories"
value="{{category.id}}">
{{category.name}}
</option>
</select>
和以下 Dart 代码段:
void onFilterCategory() {
print('onFilterCategory');
print('this.selectedCategoryId: ' + this.selectedCategoryId);
}
我是否需要使用另一个回调?
最佳答案
ngModelChange
是事件,$event
是事件
(ngModelChange)="onFilterCategory($event)"
与
void onFilterCategory(String value) {
因为您有2向装订
[(ngModel)]="selectedCategoryId"
你也可以使用
(ngModelChange)="onFilterCategory()"
与您问题中的
onFilterCategory()
一样。change
事件不起作用,因为它触发得太早-在[(ngModel)]="selectedCategoryId"
能够更新selectedCategoryId
之前。
关于dart - 如何在AngularDart组件的更改回调中获取选定的选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50531078/