1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
| import { Component, OnInit } from '@angular/core';
| import { FormGroup, FormBuilder, Validators } from '@angular/forms';
| import { TransferService } from './transfer.service';
|
| @Component({
| selector: 'app-step1',
| templateUrl: './step1.component.html',
| })
| export class Step1Component implements OnInit {
| form: FormGroup;
|
| constructor(private fb: FormBuilder, public item: TransferService) {}
|
| ngOnInit() {
| this.form = this.fb.group({
| pay_account: [
| null,
| Validators.compose([Validators.required, Validators.email]),
| ],
| receiver_type: [null, [Validators.required]],
| receiver_account: [null, [Validators.required]],
| receiver_name: [
| null,
| Validators.compose([Validators.required, Validators.minLength(2)]),
| ],
| amount: [
| null,
| Validators.compose([
| Validators.required,
| Validators.pattern(`[0-9]+`),
| Validators.min(1),
| Validators.max(10000 * 100),
| ]),
| ],
| });
| this.form.patchValue(this.item);
| }
|
| //#region get form fields
| get pay_account() {
| return this.form.controls['pay_account'];
| }
| get receiver_type() {
| return this.form.controls['receiver_type'];
| }
| get receiver_account() {
| return this.form.controls['receiver_account'];
| }
| get receiver_name() {
| return this.form.controls['receiver_name'];
| }
| get amount() {
| return this.form.controls['amount'];
| }
| //#endregion
|
| _submitForm() {
| this.item = Object.assign(this.item, this.form.value);
| ++this.item.step;
| }
| }
|
|