Ошибка: не удается разрешить все параметры для CustomValidators - PullRequest
0 голосов
/ 21 января 2019

Я создал пользовательский файл класса валидатора и импортировал его в свой проект, и он отлично работает, но когда я попытался использовать http, это показало мне проблему

это код custom.validator.ts

    import { AbstractControl } from '@angular/forms';
    import { Http } from '@angular/http'

    export class CustomValidators{
    constructor(private http:Http){}
    /**
     * check if this email is duplicate
     */
    isEmailduplicat(control:AbstractControl){
        console.log(control.value) 


 this.http.get('http://localhost/user/by/email/'+control.value).subscribe(data=> 
   {
            console.log('data is', data)
        })
        return null;
    }

    }

это форма инициализируется в коде компонента

 //properties
  form:FormGroup; //this is a signup Form

  constructor( private _auth:AuthService, private formBuilder:FormBuilder, private cv:CustomValidators ) { 

    this.form = this.formBuilder.group({
      email    : ['', [Validators.required,this.cv.isEmailduplicat]],
      password : ['',[Validators.required]],
      confirm  : ['', [Validators.required]]
    })


  }

, и я импортировал файл customVlidator в app.module.ts и установил его в поставщиках: [CustomValidators]

без http это работает хорошо, но при попытке использовать http выдает мне эту ошибку «Ошибка: невозможно разрешить все параметры для CustomValidators: (?)».

...