【发布时间】:2018-10-25 21:37:46
【问题描述】:
有人知道在使用 react-redux 中的 connect 函数时如何用 React.memo 包装 React 组件吗?
例如,您将如何修改以下内容?
let Button = (props: Props) => (
<button onClick={props.click}>{props.value}</button>
);
Button = connect(
mapStateToProps,
mapDispatchToProps
)(Button);
我试过了:
let Button = React.memo((props: Props) => (
<button onClick={props.click}>{props.value}</button>
));
Button = connect(
mapStateToProps,
mapDispatchToProps
)(Button);
但是,connect 返回的函数需要传递一个组件,因此它会出错:
未捕获的错误:您必须将组件传递给由返回的函数 连接。而是收到 {"compare":null}
【问题讨论】:
-
React.memo(connect(...)(Button))呢? -
@putvande 是的,这段代码可以,但是memo的第二个参数获取不到mapStateToProps返回的对象……
标签: javascript reactjs redux connect