首页 > 解决方案 > 不进行react路由返回App组件

问题描述

我有显示一个按钮的组件。单击此按钮加载具有后退按钮的组件。我现在想在单击此后退按钮时返回到组件。

我是新手,如果我在网上搜索,我会看到 react-routing 作为解决方案。不会简单地从组件工作中渲染组件吗?就像从 ?

标签: javascriptreactjs

解决方案


父组件有一个名为 isChildActive 的状态。

this.state = {isChildActive: false}

在 Parent 的渲染上你实例化<ChildComponent active={this.state.isChildActive} goBack={() => this.setState({isChildActive: false})} />

然后onClick在 ParentComponent 处添加按钮的回调:<button onClick ={() => this.setState({isChildActive:true})} />

所以这是做这件事的简单方法。您拥有父组件的状态,因为在反应中,数据从上到下单向流动。然后您将回调传递给您的子组件,以在需要时修改父拥有的状态。

最好的路由方法是使用库,因为这不是一项简单的任务,如果使用经过良好测试的库,您将节省大量时间和麻烦。行业标准是react-router


推荐阅读