Задать вопрос
@supeeeee_r_man
Начинающий веб-разработчик

Как остановить постоянный запрос api?

Добрый день!
Подскажите, пожалуйста.
Как остановить постоянный запрос api??

Вот код.
Как я понимаю, в "public update()", нужно написать какое-то условие.

class VdcDetailsPage extends React.Component {
    public update(): void {
        this.props.actions.getVdcs();
        this.props.actions.vdcDetailsLoad(this.props.match.params.vdcid);
    }

    public componentDidUpdate(prevProps): void {
        this.update();
    }

    public componentDidMount(): void {
        this.update();
    }

    public render(): React.ReactNode {
        if (this.props.vdcs.loading || !("LIMIT_CPU_COUNT" in this.props.VDC) ) {
            return <div />
        }
        return (
            <Standard title={this.props.intl.formatMessage({ id: 'title.vmdetails' })}>
                {/* eslint-disable-next-line react/jsx-no-undef */}
                <VDCDetails vdcs={this.props.vdcs} VDC={this.props.VDC}/>
            </Standard>
        );
    }
}

export default connect(
    (store): {} => {
        return {
            vdcs: store.vdcs,
            VDC: store.VDC,
        };
    },
    (dispatch): {} => ({
        actions: {
            vdcDetailsLoad: (data): void => vdcDetailsLoad(data, dispatch),
            getVdcs: (): void => getVdcs(dispatch),
        },
    }),
)(injectIntl(VdcDetailsPage));


Скриншот с запросами:
5dbaa1bbd1985621650501.png
  • Вопрос задан
  • 282 просмотра
Подписаться 1 Простой Комментировать
Решения вопроса 1
TTATPuOT
@TTATPuOT
https://code.patriotovsky.ru/
В componentDidUpdate() нужно обязательно сравнить, пришли ли новые пропсы или это старые обновляются.
Подробнее: https://ru.reactjs.org/docs/react-component.html#c...
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@akyl-kb
Что делает функция vdcDetailsLoad(data, dispatch)?
Скорее всего это из-за асинхронного запроса, vdcDetailsLoad обновляет store не дожидаясь ответа от сервера
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы