У меня есть следующий пользовательский валидатор, который работает, как и ожидалось, без проблем.
@Directive({
selector:'[TestValidator]',
providers:[
{ provide: NG_VALIDATORS, useExisting:TestValidatorDirective, multi:true}
]
})
export class TestValidatorDirective implements Validator{
validate(control:AbstractControl):ValidationErrors|null {
return control.value == '-1' ? {'defaultSelected':true} : null;
}
}
Когда я удаляю массив провайдеров из TestValudatorDirective и помещаю его в app.module.ts, как показано ниже, это не такработает.
.....
providers: [
{ provide: NG_VALIDATORS, useExisting:TestValidatorDirective, multi:true}
],
bootstrap: [AppComponent]
})
export class AppModule { }
Может кто-нибудь объяснить мне это поведение, я немного растерялся.