我有一个TextField
,我正在尝试在其上使用formControl
绑定:
<TextField class="input right" [formControl]="query"></TextField>
这样我便可以听这样的更改:
public query = new FormControl('');
...
this.querySubscription = this.query.valueChanges.subscribe((query) => {
console.log(query);
this.places.search(this.query.value)
.then((places) => {
this.searchResults = places;
console.log(this.searchResults);
}, (error => {
// TODO: Handle error
console.log(error);
}));
});
它所在的模块:
import { SharedModule } from '../../shared/shared.module';
import { MapRoutingModule } from './map-routing.module.tns';
import { NgModule, NO_ERRORS_SCHEMA } from '@angular/core';
import { MapComponent } from './map.component';
import { NativeScriptCommonModule } from 'nativescript-angular/common';
import { NativeScriptUISideDrawerModule } from 'nativescript-ui-sidedrawer/angular';
import { NativeScriptFormsModule } from 'nativescript-angular/forms';
@NgModule({
imports: [
NativeScriptCommonModule,
// NativeScriptFormsModule,
MapRoutingModule,
NativeScriptUISideDrawerModule,
SharedModule
],
declarations: [
MapComponent,
],
schemas: [NO_ERRORS_SCHEMA]
})
export class MapModule {}
问题是valueChanges
从未触发。.于是我想:“哦,我可能会错过NativeScriptFormsModule
,所以我尝试将其添加到MapModule
的{{1}}我收到一条错误消息,而不是说imports
,所以我再次将其删除。
我在这里怎么可能做错了?
答案 0 :(得分:2)
包括NativeScriptFormsModule
和ReactiveFormsModule
应该没问题:)