【发布时间】:2023-02-05 21:56:52
【问题描述】:
我需要做类似的事情
const RoutesList = () => (
<Fragment>
<Route .../>
<Route .../>
<Route .../>
</Fragment>
)
并在Routes中使用它
...
<Routes>
<RoutesList/>
</Routes>
...
但它抛出错误说Uncaught Error: [PreBuiltRoutes] is not a <Route> component. All component children of <Routes> must be a <Route> or <React.Fragment>
即使我要返回片段。
【问题讨论】:
-
您是否尝试过返回一组路由而不是一个片段,然后使用展开运算符?
-
对我来说似乎很清楚:
All component children of <Routes> must be a <Route> or <React.Fragment>。你的孩子不是这些,而是一个名为RoutesList的组件。 -
@RiadhAdrani 我确实尝试过,同样的错误,即使我直接返回 Route
-
@RobinZigmond 这是否意味着不可能做我正在做的事情?以及它们似乎有效的自定义保护路由如何
-
我不是 100% 确定我会遵循 - 但它听起来像返回一个数组,因为 @RiadhAdrani 建议可能是这样做的方法。
标签: javascript reactjs react-router-dom