Документы Redux для bindActionCreators гласят:
Единственный вариант использования
bindActionCreators
- это когда вы хотите передать некоторых создателей действий в компонент, который не знает о Redux, и вы не хотите передавать ему диспетчеризацию или хранилище Redux.
Каков будет пример, где bindActionCreators
будет использоваться/нужен?
Какой компонент не будет знать о Redux?
Каковы преимущества/недостатки обоих вариантов?
//actionCreator
import * as actionCreators from './actionCreators'
function mapStateToProps(state) {
return {
posts: state.posts,
comments: state.comments
}
}
function mapDispatchToProps(dispatch) {
return bindActionCreators(actionCreators, dispatch)
}
против
function mapStateToProps(state) {
return {
posts: state.posts,
comments: state.comments
}
}
function mapDispatchToProps(dispatch) {
return {
someCallback: (postId, index) => {
dispatch({
type: 'REMOVE_COMMENT',
postId,
index
})
}
}
}