我正在学习 React 并遵循一些教程,我遇到了这段代码:
import React from 'react';
import TodosView from 'components/TodosView';
import TodosForm from 'components/TodosForm';
import { bindActionCreators } from 'redux';
import * as TodoActions from 'actions/TodoActions';
import { connect } from 'react-redux';
@connect(state => ({ todos: state.todos }))
export default class Home extends React.Component {
render() {
const { todos, dispatch } = this.props;
return (
<div id="todo-list">
<TodosView todos={todos}
{...bindActionCreators(TodoActions, dispatch)} />
<TodosForm
{...bindActionCreators(TodoActions, dispatch)} />
</div>
);
}
}
这是一个待办事项应用程序,这是主页,它加载了 2 个更小components
的 . 我几乎什么都懂,但我什么也不懂:
- 做什么
connect
?我知道你必须传递 4 个参数(虽然我无法准确地得到这 4 个变量是什么)。 - 装饰器的实现
@connect
如何,转译后的代码会是什么样子?
提前致谢 :)