Angular 2+ Material mat-chip-list formArray验证
创始人
2024-10-15 15:00:38
0

在Angular中使用Angular Material的mat-chip-list和formArray进行验证的方法如下所示:

  1. 首先,确保你已经在你的项目中正确地导入了Angular Material和FormsModule。

  2. 在你的组件的模板中,使用mat-chip-list和formArray来显示和处理chip列表。示例如下:

{{ chip.value }} cancel
  1. 在你的组件类中,创建一个FormGroup来表示整个表单,并创建一个FormArray来表示chip列表。然后,添加表单验证规则并初始化表单。示例如下:
import { Component, OnInit } from '@angular/core';
import { FormBuilder, FormGroup, FormArray, FormControl, Validators } from '@angular/forms';

@Component({
  selector: 'app-my-component',
  templateUrl: './my-component.component.html',
  styleUrls: ['./my-component.component.css']
})
export class MyComponentComponent implements OnInit {
  myForm: FormGroup;
  chipControls: FormArray;

  separatorKeysCodes = [ENTER, COMMA];

  constructor(private formBuilder: FormBuilder) { }

  ngOnInit() {
    this.chipControls = this.formBuilder.array([], Validators.required);

    this.myForm = this.formBuilder.group({
      chips: this.chipControls
    });
  }

  addChip(event: MatChipInputEvent): void {
    const input = event.input;
    const value = event.value;

    if ((value || '').trim()) {
      this.chipControls.push(new FormControl(value.trim()));
    }

    if (input) {
      input.value = '';
    }
  }

  removeChip(chipIndex: number): void {
    this.chipControls.removeAt(chipIndex);
  }
}

在上述代码中,我们创建了一个FormGroup和一个FormArray来表示chip列表。我们还在addChip方法中添加了一个新的FormControl来添加新的chip,并且在removeChip方法中删除指定的chip。

  1. 最后,你可以在你的模板中使用表单的valid属性来检查表单是否有效,并根据需要采取相应的操作。示例如下:

在上述代码中,我们使用表单的valid属性来禁用提交按钮,如果表单无效。

这样,你就可以使用mat-chip-list和formArray进行验证了。当chip列表为空时,表单将被标记为无效,否则表单将被标记为有效。你还可以添加其他的验证规则来满足你的需求,比如最小和最大chip数量的限制等。

相关内容

热门资讯

6分钟辅助!hhpoker是真... 6分钟辅助!hhpoker是真的假的,hhpoker真的有透视吗,演示教程(真是有挂)1、每一步都需...
第七分钟辅助!we poker... 第七分钟辅助!we poker插件,we poker免费辅助器,手筋教程(有挂方式)暗藏猫腻,小编详...
七分钟辅助!aa poker辅... 七分钟辅助!aa poker辅助包,pokemmo脚本辅助器下载,讲义教程(有挂秘籍)1、pokem...
第四分钟辅助!wepoker辅... 第四分钟辅助!wepoker辅助器安装包定制,aapoker透视脚本,大纲教程(有挂总结)所有人都在...
第四分钟辅助!wpk透视辅助靠... 第四分钟辅助!wpk透视辅助靠谱吗,wepoker透视苹果系统,诀窍教程(有挂猫腻);运wepoke...
七分钟辅助!aapoker透视... 七分钟辅助!aapoker透视脚本入口,wejoker开挂,学习教程(有挂教程)1、打开软件启动之后...
第四分钟辅助!淘宝买wepok... 第四分钟辅助!淘宝买wepoker透视有用吗,wpk俱乐部怎么作弊,积累教程(有挂规律)1、下载好淘...
6分钟辅助!we-poker软... 6分钟辅助!we-poker软件,购买的wpk辅助在哪里下载,积累教程(有挂技巧)购买的wpk辅助在...
第2分钟辅助!如何下载wepo... 第2分钟辅助!如何下载wepoker安装包,newpoker怎么安装脚本,教程书教程(今日头条)1、...
4分钟辅助!wepoker钻石... 4分钟辅助!wepoker钻石怎么看底牌,wepoker辅助器有哪些功能,法门教程(有挂详细)该软件...