<input class="form-control dateicon" maxlength="10" minlength="10" [maxDate]="api.maxDate" name="xyz" (ngModelChange)="def($event,2)"[bsConfig]="{ isAnimated: true ,dateInputFormat: 'DD/MM/YYYY'}" formControlName="abc" bsDatepicker placeholder="DD / MM / YYYY"/>
Приведенный выше код является моим кодом выбора даты ngx bootstrap, и я запускаю метод с помощью ngModelchange.
Приведенный ниже код представляет код component.ts:
def(event,type){
if(type == 2){
this.globals.stacks.controls['abc'].setValue(event);
}
}
Ниже приведен мой код global.ts:
stacks: FormGroup = this.formbuilder.group({
abc: ['',ValideService.ghi],
xyz: [''],
});
Ниже приведен мой проверочный код службы:
static ghi(control) {
let temp = control.value;
var minDate: any = new Date('09/01/2018');
var maxDate: any = new Date();
if (temp == 'undefined' || temp == null || temp == '') {
return { 'minDatemaxDatereq': true };
} else if (minDate > temp || maxDate < temp) {//&&
return { 'minDatemaxDate': true };
}
else {
return null;
}
}
Всякий раз, когда я выбираю конкретную дату из средства выбора даты, метод def()
из файл component.ts запускается и повторяется n раз, пока я не получу ошибку максимального размера стека.