// Actions
export function fetchAPI(dispatch, type_reducer, url) {
dispatch (type_reducer());
fetch('http://127.0.0.1:8000/api/v0/' + url)
.then(function (response) {
if(response.status !== 200) {
return;
}
response.json().then(json => json.length === 0 || undefined || null ? undefined : json.map(item => item)).then(item => dispatch(type_reducer(true, item)))
})
}
export function selectFilter(request) {
return (dispatch) => fetchAPI(dispatch, type_reducer=SelectFilter, url='filter' + request);
}
import {FILTER_CATEGORIES_REQUEST, FILTER_CATEGORIES_SUCCESS} from "../constans/Page";
// ActionCreators
export function SelectFilter(state, item) {
if (state) {
return {
type: FILTER_CATEGORIES_REQUEST
}
} else {
return {
type: FILTER_CATEGORIES_SUCCESS,
item
}
}
}
dispatch (type_reducer(// сюда передаём данные с респонза));
SelectFilter(item)
- item будет undefined, и вы вернёте FILTER_CATEGORIES_REQUEST
, потом после респонза вы наверное хотите еще раз дёрнуть dispatch (type_reducer(response.data)); - сюда уже даныне передаём, тогда export function SelectFilter(item) { if item возвращаем{
type: FILTER_CATEGORIES_SUCCESS,
item
}