Я хотел показать загрузчик для каждого запроса в отдельности, в зависимости от того, какой запрос сделан. Предположим, на панели инструментов у меня есть несколько виджетов, и у них у всех разный вызов API, я хотел показать разный загрузчик для каждого сделанного запроса,
Одним из способов является добавление флага isLoading для каждого сделанного запроса, что, я думаю, не является хорошим решением по мере роста приложения, и я нахожу решение, которое может обрабатывать несколько запросов от одного флага
как мне сделать индивидуальный загрузчик на основе каждого запроса
ниже мой редуктор и действие
редуктор
export const intialstate = {
isAuth: false,
isLoading: false,
btnDisable: false
};
export default function(state = intialstate, action) {
switch (action.type) {
case API_REQUEST:
return {
...state,
isLoading: true,
};
case API_SUCCESS:
return {
...state,
isLoading: false,
isError: null
};
case API_FAILURE:
return {
...state,
isError: action.payload,
isLoading: false,
};
// no default
}
return state;
}
action.js
export const AnyAPIRequest = () => {
return (dispatch) => {
dispatch({
type: API_REQUEST
});
API.anygetcall()
.then((res) => {
dispatch({
type: API_SUCCESS
});
dispatch({ type: GETLIST, payload: res });
})
.catch((err) => {
dispatch({
type: API_FAILURE,
payload: err
});
});
};
};
Пожалуйста, помогите, как реализовать динамический загрузчик на основе другого запроса, и дайте мне знать, что нужно обновить в текущем рабочем процессе