我有一个应用程序可以创建太阳系并使用以下代码创建通往它们的路线
<Route
exact
path="/:id"
render={(props) => <GenerateSystem {...props} />}
/>
这工作正常,我的 GenerateSystem
组件创建了几个行星,它们本身应该有通往自己页面的路线。
我的 GenerateSystem 组件
<MiniPlanet
name={`planets/${makeid()}`}
label={``}
className={`${planetTypes[Math.floor(Math.random() * 56 + 1)]}
}`}
>
{" "}
</MiniPlanet>
在我的 app.js 中,我尝试像这样使用路由
<Route exact path ="/planet/:id" component={GeneratePlanet} />
然而到目前为止,当我点击这些路线之一时,例如 http://localhost:3000/planets/p0c70v
,而不是将我带到我的 GeneratePlanet
组件它将返回我的主页。目前我的 GeneratePlanet
组件只包含一行文本,所以我知道问题不存在。
我在路由方面做错了什么?我的完整代码可以查看 here .
最佳答案
找到原因了
useEffect(() => {
EnterSystem();
MakeTheSystem();
return () => {
ExitSystem();
};
}, []);
去掉这部分代码
return () => {
ExitSystem();
};
触发退出动画。它重定向到“/”页面。
关于javascript - 从 React 中其他生成的路由链接到生成的路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68091308/