编辑 tl;博士:以下是您忘记在行动中添加type
财产时会发生的情况。我会留下这个问题,以防Google员工发生同样的问题。
我在Unexpected token
函数中应用dispatch
时出现mapsDispatchToProps
错误。
作为一个相当小的例子,这里是组件:
import React from 'react';
import { connect } from 'react-redux';
import { Button } from 'semantic-ui-react';
import './App.css';
const ToggleButton = ({ toggleButtonClick }) => (
<div>
<Button onClick={toggleButtonClick}>Toggle</Button>
</div>
);
function mapStateToProps(state) {
return { val: state.val };
}
function mapDispatchToProps(dispatch) {
return { toggleButtonClick: () => dispatch({ 'TOGGLE_BUTTON_CLICK' }) }; //<--------ERROR OCCURS ON THE dispatch RIGHT PARENTHESIS
}
export default connect(mapStateToProps, mapDispatchToProps)(ToggleButton);
完整错误:
Module build failed: SyntaxError: Unexpected token (18:69)
16 |
17 | function mapDispatchToProps(dispatch) {
> 18 | return { toggleButtonClick: () => dispatch({ 'TOGGLE_BUTTON_CLICK' }) };
| ^
19 | }
20 |
21 | export default connect(mapStateToProps, mapDispatchToProps)(ToggleButton);
答案 0 :(得分:1)
我想你想要:
function mapDispatchToProps(dispatch) {
return { toggleButtonClick: () => dispatch({ type: 'TOGGLE_BUTTON_CLICK' })}
}
请注意type:
中的dispatch()
。