【发布时间】:2021-04-10 06:00:32
【问题描述】:
我花了好几个小时弄清楚为什么,我无法获得任何表单值。控制台没有错误。在这一点上,我不知道接下来要检查什么!每次我点击注册时,即使表单具有价值。使用“this.myForm.value”时结果为空。
//app.module
import { NgModule } from '@angular/core';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { BrowserModule } from '@angular/platform-browser';
import { RouteReuseStrategy } from '@angular/router';
import { IonicModule, IonicRouteStrategy } from '@ionic/angular';
import { AppRoutingModule } from './app-routing.module';
import { AppComponent } from './app.component';
@NgModule({
declarations: [AppComponent],
entryComponents: [],
imports: [
BrowserModule,
IonicModule.forRoot(),
AppRoutingModule,
ReactiveFormsModule,
FormsModule,
],
providers: [{ provide: RouteReuseStrategy, useClass: IonicRouteStrategy }],
bootstrap: [AppComponent],
})
export class AppModule {}
//login.html
<ion-header>
<ion-toolbar color="primary">
<ion-title>Log in</ion-title>
</ion-toolbar>
</ion-header>
<form [formGroup]="myForm">
<ion-item>
<ion-label>username</ion-label>
<ion-input type="text" formControlName="username"></ion-input>
</ion-item>
<ion-item>
<ion-label>password</ion-label>
<ion-input type="text" formControlName="password"></ion-input>
</ion-item>
<ion-button
expand="block"
(click)="onSignUp()"
>Submit</ion-button>
</form>
//login.component.html
import { Component, OnInit } from '@angular/core';
import { FormBuilder, FormGroup, Validators } from '@angular/forms';
@Component({
selector: 'app-login',
templateUrl: './login.component.html',
styleUrls: ['./login.component.scss'],
})
export class LoginComponent implements OnInit {
public myForm: FormGroup;
constructor(
public formBuilder: FormBuilder
) { }
ngOnInit() {
this.myForm = this.formBuilder.group({
username: [null, Validators.required],
password: [null, Validators.required]
});
console.log(this.myForm.value);
}
onSignUp(): void {
console.log(this.myForm.value);
}
}
【问题讨论】: