寫了一個高階組件const fn=(Com)=>{ return class A extends Comonents{
state={
list
} return <Com {...this.props}/>
}
}
const NewCom = fn(Com);NewCom 如何操作修改 list
2 回答

有只小跳蛙
TA貢獻1824條經驗 獲得超8個贊
向子組件傳遞方法,然后在子組件里面調用該方法。
const fn=(Com)=>{ return class A extends Component{ state={ list } handleList = () => { // to do ... this.setState({ list: ... }) } return <Com handleList={this.handleList} {...this.props}/> } }
class Com extends Components { state = {} handleList = () => this.props.handleList() return ( .... ) }

互換的青春
TA貢獻1797條經驗 獲得超6個贊
普通組件怎么操作,高階組件就怎么操作
const fn=(Com)=>{ return class A extends Comonents{ state={ list } componentDidMount(){ fetch('/XXX') .then(res=>{ ... this.setState({...}); }) } render(){ return <Com {...this.props}/> } } } const NewCom = fn(Com);
添加回答
舉報
0/150
提交
取消