如何在AngularDart组件的更改回调中获取选定选项

时间:2018-05-25 14:08:35

标签: dart angular-dart

我想使用select HTML元素来过滤表格中的项目。为此,我为更改事件提供了模型值selectedCategoryId和事件回调onFilterCategory。但是当调用回调时,值selectedCategoryIdnull

我有以下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);
}

我是否需要使用其他回调?

1 个答案:

答案 0 :(得分:1)

ngModelChange是事件,$event是值

(ngModelChange)="onFilterCategory($event)"

 void onFilterCategory(String value) {

因为你有双向绑定

[(ngModel)]="selectedCategoryId"

您也可以使用

(ngModelChange)="onFilterCategory()"

使用问题中的onFilterCategory()

change能够更新[(ngModel)]="selectedCategoryId"之前,selectedCategoryId事件无效,因为它过早发生。