나는 설정에 작업을 시도하고 난 다음 호출에서 반환 된 데이터 상태를 업데이트 다른 액션 해고 할 수있는 AJAX 호출 할 때 너무 :돌아 오는 비동기 작업
작업을.
this.props.teamActions.getUserTeams()
getUserTeams
행동이 내가 얻을 때문에 떨어져 잘 화재 : JS 내 구성 요소의
import axios from 'axios';
export const setUserTeamsState = (teams) => {
return {
type:'SET_USER_TEAMS',
teams:teams
}
}
export const getUserTeams = (dispatch) => {
return axios.get('http://localhost:7777/getteams')
.then((response) => {
console.log(response.data)
dispatch(setUserTeamsState(response.data))
})
.catch((error) => {
//console.log(error);
});
}
는 그래서 같은 조치가 호출 콘솔 로그가 API에서 반환되었지만 setUserTeamsState
은 보이지 않습니다. 내가 할 수있는 최선의 방법으로 온라인 예제를 따르려고했으나 어디서 잘못되었는지 모르겠습니다. actions.js에 나는 그것이 내가 해요 그래서 내 setUserTeamsState
객체를 반환 console.log(dispatch(setUserTeamsState(response.data)))
경우
Reducer.js
const initialState = {
userTeams: []
};
const manageTeamsReducer = (state = initialState, action) => {
switch (action.type) {
case 'SET_USER_TEAMS': {
const newState = Object.assign(state, {
userTeams:action.teams
});
return newState;
}
default:
return state;
}
}
export default manageTeamsReducer;
: 여기에 편집
아래 내 감속기입니다 왜 실행되지 않는지 확신하지 못합니다. 이것이 올바른 접근 방법입니까?
당신을 수행 콘솔의 오류를 확인 하시겠습니까? 어떤 유형의 예외가 있습니까? – mersocarlin
'SET_USER_TEAMS'이 발송 될 때 감속기가 호출되고 있습니까? – topher
사용자 상태가 초기 상태에서는 배열로 userTeams를 설정했지만 감속기 호출에서는 Object를 새 상태로 반환하는 것처럼 보입니다. –