在 TextField 上绑定 formControl 时,NativeScript valueChanges 从不发出
NativeScript valueChanges never emits when binding formControl on a TextField
我有一个 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
的 imports
但后来我得到一个错误而不是说 No provider for ngControl
,所以我再次删除它。
我在这里做错了什么?
包括 NativeScriptFormsModule
和 ReactiveFormsModule
应该没问题:)
我有一个 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
的 imports
但后来我得到一个错误而不是说 No provider for ngControl
,所以我再次删除它。
我在这里做错了什么?
包括 NativeScriptFormsModule
和 ReactiveFormsModule
应该没问题:)