簡體   English   中英

Angular 8 在另一個函數中調用一個函數

[英]Angular 8 call a function in another function

我在我的 Angular 應用程序中創建了一個 FormGroup,如下所示:

  registrationForm: FormGroup;
  this.registrationForm = this.fb.group({
  orga: ['', [Validators.required, this.organismeValidator.bind(this)]],
  });

但我的問題是,當我輸入函數“dateFin”時,我想調用我的表單的有機驗證器。 但它似乎永遠不會改變我的“OrganismeValidator”的錯誤。 例如,當“myDtFin”不為空時,我想為此控件返回一個空錯誤,在我的情況下,它永遠不會改變”

    organismeValidator(control: AbstractControl) {
    // this.serviceHttp.getAllPensions().subscribe(resp => {
    // this.pensionsInvalidite = resp;
    if (this.pensionsInvalidite) {
      for (const pension of this.pensionsInvalidite) {
        if (!pension.dtFin) {
          if (control.value === pension.organisme.code && !this.myDtFin) {
            console.log('yes');
            return { organismeValidator: true };
          }
        }
      }
    }
    return null;
  }

  datefin(myDtFin) {
    this.myDtFin = myDtFin;
    this.organismeValidator.call(this.myForm);

    }

如果有效,請返回 null 否則返回驗證錯誤作為對象。 像下面這樣試試

 if (this.pensionsInvalidite) {
      for (const pension of this.pensionsInvalidite) {
        if (!pension.dtFin) {
          if (control.value === pension.organisme.code && !this.myDtFin) {
            console.log('yes');
            return null;
          }
        }
      }
    }
    return { organismeValidator: false };

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM