• angular2里的响应式表单范例


    1、在跟模块下导入 

    import { ReactiveFormsModule } from '@angular/forms';

    @NgModule({
      declarations: [
        AppComponent,
        FormArrayComponent,
      ],
      imports: [
        BrowserModule,
        AppRoutingModule,
        ReactiveFormsModule
      ],
      providers: [],
      bootstrap: [AppComponent]
    })
    2、在相应组建的Ts.文件代码
    import { Component, OnInit } from "@angular/core";
    import { FormArray, FormControl, FormGroup } from "@angular/forms";
    import { Validators } from "@angular/forms";
    @Component({
      selector: "app-form-array",
      templateUrl: "./form-array.component.html",
      styleUrls: ["./form-array.component.css"]
    })
    export class FormArrayComponent implements OnInit {
      constructor() {}
      formGroup = new FormGroup({
        aliases: new FormArray([new FormControl("", Validators.required)])
      });
      ngOnInit() {}

      // 从formGroup里获取formArray对象,方法名为此FormArray的实例对象名
      get ali() {
        return this.formGroup.get("aliases") as FormArray;
      }
      // 往formArray里添加控件
      addAlias() {
        this.ali.push(new FormControl("", Validators.required));
      }
      onSubmit() {
        console.warn(this.formGroup.value);
      }
    }
    3、HTML文件示例
     
    <form [formGroup]="formGroup"  (ngSubmit)="onSubmit()" >
      <div formArrayName="aliases">
        <h3>Aliases</h3>
        <button (click)="addAlias()">Add Alias</button>
        <div *ngFor="let address of ali.controls; let i = index">
          <label>
            Alias:
            <input type="text" [formControlName]="i" />
          </label>
        </div>
      </div>
     <button type="submit"  [disabled]="!formGroup.valid">Submit</button>
    </form>
  • 相关阅读:
    python斐波那契数列
    Python 核心编程(第二版)第八章 练习完整答案[转载]
    MYSQL自动备份!
    PHP筛选法求质数。
    Python函数式编程指南(四):生成器(转载)
    试除法求质数的最快方法!
    Python函数式编程指南:目录和参考(转载)
    PHP冒泡算法
    maven默认web项目中的web.xml版本问题
    IDEA自动补全返回值类型的快捷键
  • 原文地址:https://www.cnblogs.com/kukai/p/12073059.html
Copyright © 2020-2023  润新知