我有一个显示一个按钮的组件。单击此按钮将加载具有后退按钮的组件。现在,我想在单击后退按钮时返回到组件。
我是react的新手,如果我在网上搜索,我会看到react-routing是一个解决方案。不是简单地从组件渲染组件就行了吗?就像是从哪里渲染出来的?
发布于 2018-11-04 03:31:35
父组件有一个名为isChildActive的状态。
this.state = {isChildActive: false}在渲染父级时,实例化<ChildComponent active={this.state.isChildActive} goBack={() => this.setState({isChildActive: false})} />
然后添加到位于ParentComponent:<button onClick ={() => this.setState({isChildActive:true})} />的按钮的onClick回调中
所以这是一种简单的方法。您拥有父组件的状态,因为在react中,数据是从上到下单向流动的。然后,您将一个回调传递给子组件,以便在需要时修改父组件拥有的状态。
最好的路由方式是使用库,因为这不是一项简单的任务,如果使用经过良好测试的库,您将节省大量时间和麻烦。行业标准是react-router
https://stackoverflow.com/questions/53134185
复制相似问题