reactjs - 使用反应路由器进行导航,重定向获取新页面但没有内容
问题描述
尝试使用 React Router 从子组件上升到父组件。使用来自侧边栏组件和按钮的重定向
我尝试将状态专门设置为重定向的道具,但是当您运行代码时,它无法找到我的其他组件
HourlyWeather.js
this.state = {
redirect: false
}
然后我将其用于我的按钮的句柄提交:
HourlyWeather.js
handleSubmit = () => {
this.setState({
redirect: !this.state.redirect
});
};
/*
这是我的重定向:
onst SwapToCurrent = ({ component: Component }) => {
return (
<Route
render={props =>
DisplayHourlyWeather.redirect === 'true' &&
DisplayWeather.fetchedWeatherData === 'true' ? (
<DisplayWeather {...props} />
) : (
<Redirect
to={{
pathname: '/current',
state: { fetchedWeatherData: true }
}}
/>
)
}
/>
);
};
最后,这就是我要有条件地渲染的内容:
if (this.state.fetchedWeatherData) {
return (
<div className="ui container">
<br />
<h1>Current temperature</h1>
当您单击按钮时,没有任何反应,组件没有被切换我觉得我错过了与此相关的东西,任何帮助将不胜感激!
解决方案
推荐阅读
- php - 从字符串构造具有可变属性链的对象
- docker - chmod:无法访问“/home/alpine/*.sh”:权限被拒绝
- apache-kafka - Kafka消费者可以暂停一定的时间间隔并在间隔后自动恢复吗
- javascript - 相对于另一个输入框更改输入框的值?
- javascript - 无法成功在数组中动态创建多个 json 对象
- docker - 在 Kubernetes pod 中访问 Docker 映像中的文件?
- skiasharp - 将图像转换为真正的黑白
- regex - 如何使用正则表达式和记事本++将逗号插入文本文件中的多个列?
- c++ - 如何使用 MingW64 从我的 c++ 项目执行对 mysql 的查询
- github - 从 GitHub Enterprise SSO 策略中排除 GitHub 组织