填寫這份《一分鐘調查》,幫我們(開發組)做得更好!去填寫Home

Validator

一個介面,實現了它的類別可以扮演驗證器的角色。

An interface implemented by classes that perform synchronous validation.

      
      interface Validator {
  validate(control: AbstractControl): ValidationErrors | null
  registerOnValidatorChange(fn: () => void)?: void
}
    

方法

對所提供的控制元件執行同步驗證的方法。

Method that performs synchronous validation against the provided control.

      
      validate(control: AbstractControl): ValidationErrors | null
    
引數
control AbstractControl

要驗證的控制元件。

The control to validate against.

返回值

如果驗證失敗,則驗證錯誤的對映表,否則為 null。

ValidationErrors | null: A map of validation errors if validation fails, otherwise null.

註冊一個回呼(Callback)函式以在驗證器的輸入發生更改時呼叫。

Registers a callback function to call when the validator inputs change.

      
      registerOnValidatorChange(fn: () => void)?: void
    
引數
fn () => void

回呼(Callback)函式

The callback function

返回值

void

使用說明

提供一個自訂的驗證器

Provide a custom validator

下面的例子實現了 Validator 介面,以便用一個自訂的錯誤鍵來建立驗證器指令。

The following example implements the Validator interface to create a validator directive with a custom error key.

      
      @Directive({
  selector: '[customValidator]',
  providers: [{provide: NG_VALIDATORS, useExisting: CustomValidatorDirective, multi: true}]
})
class CustomValidatorDirective implements Validator {
  validate(control: AbstractControl): ValidationErrors|null {
    return {'custom': true};
  }
}