我正在基于以下项目进行开发:https://github.com/bradtraversy/lead_manager_react_django
我需要访问一个新创建的对象的pk。我可以console.log操作中需要的值,但是不能弄清楚如何在组件中使用它。 Redux工具也会在差异中显示新值。
我想念什么?
动作:
export const addPlan = (plan) => (dispatch, getState) => {
axios.post("/api/plans/", plan, tokenConfig(getState))
.then(res => {
dispatch(createMessage({ createPlan: 'Plan created.'}));
dispatch({
type: ADD_PLAN,
payload: res.data
});
}).catch(err => dispatch(returnErrors(err.response.data, err.response.status)));
减速器:
case ADD_PLAN:
return {
...state,
plans: [...state.plans, action.payload]
};
mapStateToProps在组件中:
const mapStateToProps = state => ({
plans: state.plans.plans,
production: state.plans.production
});
答案 0 :(得分:0)
您需要在组件内部的mapStateToProps
中使用connect
。
function mapStateToProps(state) {
const { plans } = state
return { todoList }
}
export default connect(mapStateToProps)(YourComponent)
您可以阅读有关将组件与Redux存储区here连接的更多信息
答案 1 :(得分:0)
结果证明,所有设置都正确,但我只是不知道从哪里可以使用新道具。我使用componentWillReceiveUpdate和一些逻辑来防止默认设置,它的工作原理就像一个魅力。