【发布时间】:2019-01-27 04:39:42
【问题描述】:
我有 Base Validator 方法,其中包含 ivalidator 列表。
import { IValidator, ValidatorModel } from "../validation/ivalidator";
import { Observable } from "rxjs/Observable";
export abstract class BaseValidator implements IValidator {
private validators = new Array<IValidator>();
//Validators are pushed to the base validator =>Not implemented yet
validate(): Observable<ValidatorModel> {
for (let i = 0; i < this.validators.length; i++) {
//How do I loop thru all the validator and call its ASYNC method
//one by one and break and return when there is an error ???
}
}
}
每个validator 方法都公开了validate() 方法,该方法返回一个observable。
export interface IValidator {
validate(): Observable<ValidatorModel>;
}
ValidatorModel 是
export class ValidatorModel {
readonly isSuccessful: boolean;
errors: Array<string>;
}
我的问题是:
如何循环遍历所有验证器并调用其 ASYNC 方法 一个接一个,有错误就break和return???
【问题讨论】:
标签: angular typescript asynchronous rxjs