new FormControl(5),
krone: new FormControl(5),
crypto: new FormControl(5),
});
isUpdating = false;
ngOnInit(): void {
this.calculatorForm.get('dollar')?.valueChanges.subscribe((newValue) => {
if (!this.isUpdating) {
this.isUpdating = true;
const ratesWithoutDollar = this.getOtherRates('dollar', newValue);
this.calculatorForm.patchValue(ratesWithoutDollar);
this.isUpdating = false;
}
});
this.calculatorForm.get('krone')?.valueChanges.subscribe((newValue) => {
if (!this.isUpdating) {
this.isUpdating = true;
const ratesWithoutKrone = this.getOtherRates('krone', newValue);
this.calculatorForm.patchValue(ratesWithoutKrone);
this.isUpdating = false;
}
});
this.calculatorForm.get('crypto')?.valueChanges.subscribe((newValue) => {
if (!this.isUpdating) {
this.isUpdating = true;
const ratesWithoutCrypto = this.getOtherRates('crypto', newValue);
this.calculatorForm.patchValue(ratesWithoutCrypto);
this.isUpdating = false;
}
});
}
скажите насколько зашкварно использовать такой костыль для ансабскрайба? (чтобы не загнать в бесконечный цикл апдейты, т.к. при изменении одного инпута два других поменяются)
а почему просто distincеUntilChanges не использовать?
потому что я пришел второй день как из реакта пришел)
да и calculatorForm.controls.dollar более лучший вариант, чем через get, типы сохраняются
Обсуждают сегодня