reactjs - 反应路由器返回空白屏幕
问题描述
即使浏览几个 react-router-dom 示例,似乎也无法弄清楚出了什么问题......
所以这是我的主页:
class MyPage extends Component {
render () {
return (
<Aux>
<NavigationHeader />
<Switch>
<Route path="/me" exact component={PersonalInfoContainer}/>
<Route path="/exps" component={ExpsContainer}/>
</Switch>
{/* <ExpsContainer /> */}
</Aux>
);
}
我想创建一个页面来显示用户的一些个人信息作为/me
页面。所以这里是PersonalInfoContainer
:
class PersonalInfoContainer extends Component {
componentDidMount () {
console.log("PI container: ", this.props);
}
render () {
return (
<Aux>
<Link to={this.props.match.url + '/edit' }>EDIT</Link>
<Switch>
<Route path={this.props.match.url + '/edit'} component={PersonalInfoForm}/>
<Route path={this.props.match.url} component={PersonalInfoDetail}/>
</Switch>
</Aux>
)
}
}
这就是问题所在,我想要做的是有一个EDIT
按钮,该按钮导致一个输入表单,让用户修补他们的信息。我假设使用此设置,链接应该是/me/edit
,但无论我使用Link to={this.props.match.url + '/edit' }
or Link to={'/edit' }
(在这种情况下,url 是简单的/edit
),它总是返回一个空白页面。我已经测试了该表单组件是否可以正常工作,因此我的路由方法确实应该有问题。
谢谢你的帮助。
解决方案
推荐阅读
- ansible - 使用 delegate_to 的 Ansible 角色依赖和事实
- openssl - 使用 Signtool 验证文件签名不起作用
- wiremock - 具有多个允许键但响应相同的 JSON 有效负载的 Wiremock 请求模板
- jmeter - JMeterLibException:'JMeter 返回的值:1'
- xamarin - 在 Xamarin 的 ViewModel 中设置 Picker 的初始值
- javascript - 反应应用程序不保存到firebase数据库
- logstash - LogStash 翻译过滤器被忽略
- python - TensorFlow:使用@tf.function 的正确方法
- java - 启用 Show In > System Explorer 的条件是什么?
- rabbitmq - 在 RabbitMQ 2.3.6 中从消息队列中侦听消息时更改了数据类型