1
从我的理解中,ReactJS中的HO将道具添加到您的装饰组件中。但我想添加也可以作用于state
的方法。作为一个例子,我一般不会先致电this.setState
,先不检查this.isMounted()
。本质上,我想:将方法添加到React中的高阶组件
export default ComposedComponent => class BaseComponent extends React.Component {
static displayName = "BaseComponent";
constructor(props) {
super(props);
}
//------> I want this method to be available to any ComposedComponent
//------> And it has to act upon the state of ComposedComponent
updateState(obj) {
if (this.isMounted() && obj) {
this.setState(obj);
}
}
render() {
return (
<ComposedComponent {...this.props} {...this.state} />
)
}
}
说我想装饰我的组件Home
。所以我只是把它归还为export default BaseComponent(Home)
。
但this.updateState
在Home
类中不可用。我该如何解决这个问题?