You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

17 lines
522 B

import { ActionCreatorsMapObject, Dispatch } from 'redux'
export default function bindActionCreators(
actionCreators: ActionCreatorsMapObject,
dispatch: Dispatch
): ActionCreatorsMapObject {
const boundActionCreators: ActionCreatorsMapObject = {}
for (const key in actionCreators) {
const actionCreator = actionCreators[key]
if (typeof actionCreator === 'function') {
boundActionCreators[key] = (...args) => dispatch(actionCreator(...args))
}
}
return boundActionCreators
}