Ionic 4 - 离子输入双向绑定

Ionic 4 - Ionic Input Two-Way Binding

在 Ionic 4 中,如何进行双向绑定。在 Ionic 3 中,我会执行以下操作:

<ion-item color="light"> <ion-input type="string" placeholder="Username" [(ngModel)]="username"></ion-input> </ion-item>

但是在 Ionic 4 中我得到以下错误:

Can't bind to 'ngModel' since it isn't a known property of 'ion-input'.
1. If 'ion-input' is an Angular component and it has 'ngModel' input, then verify that it is part of this module.
2. If 'ion-input' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message.
3. To allow any property add 'NO_ERRORS_SCHEMA' to the '@NgModule.schemas' of this component. ("d>
          <ion-item color="light">
              <ion-input type="string" placeholder="Username" [ERROR ->][(ngModel)]="username"></ion-input>
          </ion-item>
          <ion-item color="light">
"): ng:///AppModule/LoginPage.html@12:62

如何在 Ionic 4 中使用它?

请记住将 FormsModule 添加到您的模块或创建一个 SharedModule 来导入和导出 FormsModule

@NgModule({
  imports: [
    CommonModule,
    FormsModule,
    IonicModule,
    RouterModule.forChild([
      {
        path: '',
        component: HomePage
      }
    ])
  ],
  declarations: [HomePage]
})
export class HomePageModule { }

离子 3/4 与 angular 6

为了能够对表单输入使用双向数据绑定,您需要在 Angular 模块中导入 FormsModule 包。有关详细信息,请参阅 Angular 官方教程 here

例如

import { FormsModule } from '@angular/forms';

[...]

@NgModule({
  imports: [
    [...]
    FormsModule
  ],
  [...]
})

您只需要在 app.module.ts 中导入 FormsModule。 因为我已经给出了详细的答案。 访问 link 了解详情

在您的 Angular 模块中添加 FormsModule