Это исходит от mapDispatchToProps
:
// action
export const action = (params) => async (dispatch) => // it can be async btw
actionCodeHere()
// component
import {action as importedAction} from 'action'
const component = ({action}) => {
React.useEffect(() => { action(params) }, [])
return <div/>
}
const mapDispatchToProps = {
action: importedAction
} // just object
export default connect(null, mapDispatchToProps)(component)
Это хорошая практика?
Я думаю, что это лучше, чем многие другие способы, которые я видел (особенно саксофонная сага, бессмысленная и беспощадная) , здесь меньше кода, чем когда mapDispatchToProps является функцией.
Проще всего импортировать dispatch
из хранилища непосредственно в файле действий и вообще не использовать mapDispatchToProps
, но я никогда не видел такого подхода, похоже это плохая практика.