【问题标题】:How to change the error message in mat-chip dynamically如何动态更改 mat-chip 中的错误消息
【发布时间】:2021-06-09 12:34:49
【问题描述】:

我在 stackblitz 中有这个演示,https://stackblitz.com/edit/mat-chip-demo-dhm17z

它检查电子邮件验证,但error message 中的代码存在错误“无效的电子邮件 ID " ,如果删除无效邮件后列表中没有无效邮件,也会出现错误消息。

我该如何解决它,以便:

虽然列表中有一个无效的芯片元素 => 应该出现错误消息 如果列表中只有有效的 emials => 不应出现错误消息

【问题讨论】:

    标签: angular typescript angular-material frontend


    【解决方案1】:

    component.ts 中添加:

    areEmailsInvalid(): boolean {
      return this.emailList.some(email => !this.validateEmail(email.value));
    }
    

    并从 else 中删除无效的东西:

    else {
      this.emailList.push({ value: event.value, invalid: true });
    }
    

    同样在component.html 中更改:

    <mat-error *ngIf="rulesForm.get('emails').hasError('incorrectEmail')">Invalid email ID</mat-error>
    

    进入这个:

    <mat-error *ngIf="areEmailsInvalid()">Invalid email ID</mat-error>
    

    【讨论】:

    • 谢谢,我有最后一个问题,我怎样才能使 [color] 从 css 中获取其值而不是直接在 html 中定义。例如[color]="(item.invalid)?'CSS color warn':' CSS color blue'"
    • 请为此问题打开一个新问题。你想要实现的是改变mat-chip的颜色,不推荐。
    猜你喜欢
    • 2018-04-23
    • 2021-07-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-02-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多