process/configurator: abort prev getTarif query

This commit is contained in:
vchikalkin 2024-02-08 13:19:51 +03:00
parent 47b57c0c73
commit 35ce71c149

View File

@ -11,6 +11,7 @@ import { comparer, reaction } from 'mobx';
dayjs.extend(utc);
export default function valuesReactions({ store, apolloClient, trpcClient }: ProcessContext) {
let abortController = new AbortController();
const { $calculation, $process } = store;
const { getRates, getPriceChange } = helper({ apolloClient });
@ -31,12 +32,20 @@ export default function valuesReactions({ store, apolloClient, trpcClient }: Pro
]),
async (values) => {
$calculation.element('selectTarif').resetOptions().resetValue();
try {
if (abortController) abortController.abort();
abortController = new AbortController();
const { evo_tarif } = await trpcClient.getTarif.query(values);
const { evo_tarif } = await trpcClient.getTarif.query(values, {
signal: abortController.signal,
});
if (evo_tarif) {
$calculation.element('selectTarif').setOptions(normalizeOptions([evo_tarif]));
$calculation.element('selectTarif').setValue(evo_tarif.evo_tarifid);
if (evo_tarif) {
$calculation.element('selectTarif').setOptions(normalizeOptions([evo_tarif]));
$calculation.element('selectTarif').setValue(evo_tarif.evo_tarifid);
}
} catch {
$calculation.element('selectTarif').resetOptions();
}
},
{