Forms Can';t访问所提交表格的数据
我从angular2开始。我有一个简单的模板驱动表单,可以在控制台中访问数据。但是我在传递数据时遇到了问题。这是我的密码Forms Can';t访问所提交表格的数据,forms,angular,Forms,Angular,我从angular2开始。我有一个简单的模板驱动表单,可以在控制台中访问数据。但是我在传递数据时遇到了问题。这是我的密码 import {Component} from "angular2/core"; @Component({ selector: 'my-template-driven', template:` <h2>Sign-up form</h2> <form (ngSubmit)="onSubmit(f)" #f="ngForm">
import {Component} from "angular2/core";
@Component({
selector: 'my-template-driven',
template:`
<h2>Sign-up form</h2>
<form (ngSubmit)="onSubmit(f)" #f="ngForm">
<div>
<label for="email">Mail</label>
<input ngControl="email" type="text" id="email" required #email="ngForm">
<span class="validation-error" *ngIf="!email.valid">Not Valid</span>
</div>
<div>
<label for="password">Password</label>
<input ngControl="password" type="text" id="password" required #password="ngForm">
<span class="validation-error" *ngIf="!password.valid">Not Valid</span>
</div>
<div>
<label for="confirm-password">Confirm Password</label>
<input ngControl="confirm-password" type="text" id="confirm-password" required #passwordConfirm="ngForm">
<span class="validation-error" *ngIf="!passwordConfirm.valid">Not Valid</span>
</div>
<button type="submit" [disabled]="!f.valid || password.value !== passwordConfirm.value">Submit</button>
</form>
<h2>You Submitted</h2>
`
})
export class TemplateDrivenFormComponent {
user: {email: '', password: ''};
onSubmit(form){
//console.log(form);
this.user.email = form.value['email'];
//this.user.password = form.controls['password'].value;
}
从“angular2/core”导入{Component};
@组成部分({
选择器:“我的模板驱动”,
模板:`
报名表
邮寄
无效
密码
无效
确认密码
无效
提交
你提交了
`
})
导出类TemplateDrivenFormComponent{
用户:{电子邮件:'',密码:'};
提交(表格){
//控制台日志(表格);
this.user.email=form.value['email'];
//this.user.password=form.controls['password'].value;
}
}
我得到了这个
angular2.js:23941原始异常:TypeError:无法设置未定义的属性“email”
error。如何访问已提交表单的数据。您没有正确声明本地数据,必须在声明时对其进行初始化,或者在构造函数中进行初始化
user: any;
constructor() {
this.user = {email: "", password: ""} as any;
}
在:
之后,必须提供类型。Html输入必须具有“ngModel
”属性。用户:{email:'',密码:'};没有;似乎不对。我认为应该是这样的user:any={email:'',密码:'}代码>