Мне было интересно, есть ли еще точка, использующая mapDispatchToProps
сегодня.
Я работаю над учебниками документации по сокращению (для создания списка задач), где VisibleTodoList
описывается как:
import { connect } from 'react-redux'
import { toggleTodo } from '../actions'
import TodoList from '../components/TodoList'
const getVisibleTodos = (todos, filter) => {
switch (filter) {
case 'SHOW_ALL':
return todos
case 'SHOW_COMPLETED':
return todos.filter(t => t.completed)
case 'SHOW_ACTIVE':
return todos.filter(t => !t.completed)
}
}
const mapStateToProps = (state) => {
return {
todos: getVisibleTodos(state.todos, state.visibilityFilter)
}
}
const mapDispatchToProps = (dispatch) => {
return {
onTodoClick: (id) => {
dispatch(toggleTodo(id))
}
}
}
const VisibleTodoList = connect(
mapStateToProps,
mapDispatchToProps
)(TodoList)
export default VisibleTodoList
Однако мне сказали, что сегодня я просто не могу определить mapDispatchToProps
и соединить все через:
const VisibleTodoList = connect(
mapStateToProps,
toggleTodo
)(TodoList)
Правильно ли это? И если да, то в чем смысл писать mapDispatchToProps
? Есть ли недостатки в простом возврате действия?
Спасибо!