Я отправляю запрос на сервер каждый раз, когда пользователь что-то вводит. Я использую debounce для задержки 400 мс:
type = debounce((text) => {
this.props.actions.loadInfo(text)
}, 400);
Когда я что-то печатаю, останавливаюсь и начинаю снова и повторяю это, отправляется несколько запросов, и я получаю несущественные данные. Я использую обещания:
export const loadInfo = (text) => dispatch => {
loadData(text).then(result => {
dispatch(showUserData(result));
});
};
export const loadData = async (text) => {
const tabData = await axios.get(`url&query=${text}`);
return tabData;
}
Мне нужно как-то отменить предыдущий запрос, если пользователь отправляет новый (когда он что-то набрал), каков наилучший способ сделать это? Я ожидал, что спад поможет мне, но не поможет. Я использую Axios. Это не дубликат вопросов здесь, я проверил предоставленные решения, но они мне не помогают