当前位置: 首页>>代码示例>>TypeScript>>正文


TypeScript AbstractControl.setAsyncValidators方法代码示例

本文整理汇总了TypeScript中@angular/forms.AbstractControl.setAsyncValidators方法的典型用法代码示例。如果您正苦于以下问题:TypeScript AbstractControl.setAsyncValidators方法的具体用法?TypeScript AbstractControl.setAsyncValidators怎么用?TypeScript AbstractControl.setAsyncValidators使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在@angular/forms.AbstractControl的用法示例。


在下文中一共展示了AbstractControl.setAsyncValidators方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。

示例1: addFormControl

  private addFormControl(field: FormlyFieldConfigCache) {
    const controlOptions: AbstractControlOptions = {
      validators: field._validators,
      asyncValidators: field._asyncValidators,
      updateOn: field.modelOptions.updateOn,
    };
    let control: AbstractControl;

    const form = field.parent.formControl as FormGroup;
    const value = getFieldValue(field);
    const paths = getKeyPath(field);
    if (field.formControl instanceof AbstractControl || (form && form.get(paths))) {
      control = field.formControl || form.get(paths);
      if (
        (controlOptions.validators !== control.validator)
        || (controlOptions.asyncValidators !== control.asyncValidator)
      ) {
        if (controlOptions.validators !== control.validator) {
          control.setValidators(controlOptions.validators);
        }
        if (controlOptions.asyncValidators !== control.asyncValidator) {
          control.setAsyncValidators(controlOptions.asyncValidators);
        }
        control.updateValueAndValidity();
      }
    } else if (field._componentFactory && field._componentFactory.component && field._componentFactory.component.createControl) {
      const component = field._componentFactory.component;
      console.warn(`NgxFormly: '${component.name}::createControl' is deprecated since v5.0, use 'prePopulate' hook instead.`);
      control = component.createControl(value, field);
    } else if (field.fieldGroup) {
      // TODO: move to postPopulate
      control = new FormGroup({}, controlOptions);
    } else {
      control = new FormControl(value, controlOptions);
    }

    registerControl(field, control);
  }
开发者ID:formly-js,项目名称:ng2-formly,代码行数:38,代码来源:field-form.ts


注:本文中的@angular/forms.AbstractControl.setAsyncValidators方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。