Angular2 ngForm不起作用

bar*_*maz 6 forms typescript angular2-forms angular

我正在尝试登录表单组件,但我无法读取表单数据.

当我尝试在控制台上编写用户名时,'undefined'写道.

一切似乎都很平常,但表格数据并不是组件.

以下是html代码:

<form (ngSubmit)="onSubmit(myForm)"
      #myForm="ngForm"
      class="form-signin">
    <div class="form-group">
        <h2 class="form-signin-heading">Please sign in</h2>
        <input type="text"
               id="inputUsername"
               name="inputUsername"
               class="form-control"
               placeholder="User Name"
               required>
        <input type="password"
               id="inputPassword"
               name="inputPassword"
               class="form-control"
               placeholder="Password" >
    </div>
    <button class="btn btn-lg btn-primary btn-block"
            type="submit">Sign in</button>
</form>
Run Code Online (Sandbox Code Playgroud)

组件ts:

@Component({
    selector: 'signin',
    templateUrl: './signin.component.html',
    encapsulation: ViewEncapsulation.None
})
export class SigninComponent implements OnInit{
    constructor(){}

    ngOnInit(){ }

    onSubmit(form: NgForm){
        console.log(form.value.inputUsername);
    }
}
Run Code Online (Sandbox Code Playgroud)

提前致谢.

phi*_*ooo 6

您需要将ngModel指令添加到每个表单域.这会将表单字段注册到您的表单.

    <input type="text"
           id="inputUsername"
           name="inputUsername"
           class="form-control"
           placeholder="User Name"
           ngModel
           required>
Run Code Online (Sandbox Code Playgroud)