Reactjs Thunk/Axios调度不做任何事情
我创建了一个ActionCreator,它只需向我的API发出get请求,并返回所有项目的列表。然而,由于某种原因,我的thunk函数中的返回调度根本没有启动。它到达console.log()语句并结束。据我所知,没有控制台错误,也没有网络呼叫。你知道为什么它毫无用处吗 Dashboard.js(组件) index.js(getProject reducer) 常数.jsReactjs Thunk/Axios调度不做任何事情,reactjs,rest,redux,react-redux,redux-thunk,Reactjs,Rest,Redux,React Redux,Redux Thunk,我创建了一个ActionCreator,它只需向我的API发出get请求,并返回所有项目的列表。然而,由于某种原因,我的thunk函数中的返回调度根本没有启动。它到达console.log()语句并结束。据我所知,没有控制台错误,也没有网络呼叫。你知道为什么它毫无用处吗 Dashboard.js(组件) index.js(getProject reducer) 常数.js export const GET_PROJECTS_SUCCESS = "GET_PROJECTS_SUCCESS"; ex
export const GET_PROJECTS_SUCCESS = "GET_PROJECTS_SUCCESS";
export const GET_PROJECTS_ERROR = "GET_PROJECTS_ERROR";
rootReducer.js
import createProjectReducer from "./createProject/index";
import getProjectsReducer from "./getProjects/index";
const rootReducer = (state = {}, action) => {
return {
project: createProjectReducer(state.project, action),
projects: getProjectsReducer(state.projects, action)
};
};
export default rootReducer;
修正:在阅读了functional components中的use effect钩子之后,我意识到dashboard.js中useEffect函数中缺少了props.getProjects
const initialState = {
projects: [], //array of projects
project: {}, // single project for update case
reRender: false
};
const getProjectsReducer = (state = initialState, action) => {
switch (action.type) {
case GET_PROJECTS_SUCCESS:
return { ...state, projects: action.payload }; // will need to change action.payload later on
default:
return state;
}
};
export default getProjectsReducer;
export const GET_PROJECTS_SUCCESS = "GET_PROJECTS_SUCCESS";
export const GET_PROJECTS_ERROR = "GET_PROJECTS_ERROR";
import createProjectReducer from "./createProject/index";
import getProjectsReducer from "./getProjects/index";
const rootReducer = (state = {}, action) => {
return {
project: createProjectReducer(state.project, action),
projects: getProjectsReducer(state.projects, action)
};
};
export default rootReducer;