我遇到了redux的问题。我试图从我创建的搜索栏中调度一个值,该搜索栏将获取我输入的客户ID。自动建议正常。控制台日志中的项目(ID号)和值(客户端名称)正确。但我无法将它发送给减速机。我一直在发送"发送"不是函数错误。 Redux是导入的。任何想法?
string.Format
答案 0 :(得分:2)
尝试这样做。
const mapStateToProps = (state, ownProps) => ({
clients: state.client.clients
});
const mapDispatchToProps = (dispatch) => ({
fooAction: (payload) => dispatch(foo(payload)),
barAction: () => dispatch(bar()),
});
export default connect(mapStateToProps, mapDispatchToProps)(ClientSearch);
此处foo()
和bar()
是已分派的操作,例如方法foo()
可以像这样定义和声明。
function foo(payload) {
return dispatch => SOME_API_METHOD(payload)
.then(response => {
dispatch({
type: 'SOME_COOL_ACTION_NAME',
info: response
});
})
}
有关参考,请查看react-redux以及redux-thunk
答案 1 :(得分:1)
const mapStateToProps = (state) => {
console.log('map state', state)
return {
clients: state.client.clients
};
};
export default connect(mapStateToProps, dispatch=>bindActionCreators({listClients, fetchClient},dispatch))(ClientSearch);
This should work for you