npm install --save @angular/forms
import { FormBuilder, FormGroup, Validators } from '@angular/forms';
export class RegisterFormComponent implements OnInit { registerForm: FormGroup; //声明表单组
constructor(private fb: FormBuilder, private authService: AuthService) { }
ngOnInit() { this.registerForm = this.fb.group({ 'firstName': [null, Validators.required], // 设置第一个输入框 'lastName': [null, Validators.required], // 设置第二个输入框 'email': [null, Validators.compose([Validators.required, Validators.email])], // 设置第三个输入框 'password': [null, Validators.compose([Validators.required, Validators.minLength(6)])], // 设置第四个输入框 }); }
register() { this.authService.register(this.registerForm.value).subscribe( data => console.log(data), error => console.log(error) ); } }
[HttpPost("register")]
public async Task
var result = await _userManager.CreateAsync(userToCreate, userForRegisterDto.Password);
if(result.Succeeded) { return Ok(); }
return BadRequest(result.Errors); }
@Injectable({ providedIn: 'root' }) export class AuthService { baseUrl = environment.apiUrl;
constructor(private http: HttpClient) { }
register(model: any) { return this.http.post(this.baseUrl + 'auth/register', model); } }
services.AddCors(); …
app.UseCors(x => x.AllowAnyOrigin().AllowAnyMethod().AllowAnyHeader());
这样,我们就可以在Angular和ASP.NET WebAPI之间使用表单构建器来快速创建一个用户注册表单。