Hirdetés

Keresés

Új hozzászólás Aktív témák

  • bandi0000
    nagyúr

    Kipróbáltam most a te validátorodat, és nekem jól működik.

    Így néz ki a html:
    <mat-form-field class="w-100">
      <mat-label>Name</mat-label>
      <input type="text" id="name" formControlName="name" matInput placeholder="Enter category name" />
      <mat-error *ngIf="name.hasError('required')">Name is required.</mat-error>
      <mat-error *ngIf="name.hasError('minlength')">Name must be at least 3 characters.</mat-error>
      <mat-error *ngIf="name.hasError('containUpperCase')">Must conatin uppercase</mat-error>
    </mat-form-field>

    És a ts-ben annyit csináltam, hogy beleraktam a te functionödet, meg hozzáadtam a formcontrolhoz:
    name: new FormControl('', [Validators.required, Validators.minLength(3), this.containUpperCase]),

    Így üresen, és 3 karakter alatt csak a minlength hibát írja, containUpperCase-t meg utána (átneveztem containDigit-ről :) ).

    A name az egy sima getter, vissza adja a 'this.form.control.name'-et, így átláthatódd a html.

    De így nem figyeli a dirty és pristine tulajdonságokat nem? Mármint ha belekattintassz a mezőbe, akkor nem ír ki hibát, sőt elvileg a a requiredre nem is fog hibát jelezni csak a form lesz invalid

Új hozzászólás Aktív témák