【问题标题】:Reach router <Router>: Children of <Router> must have a `path`到达路由器 <Router>:<Router> 的子节点必须有一个 `path`
【发布时间】:2020-08-06 09:34:24
【问题描述】:

我想读取 clientProvider 中的 url,然后渲染应用程序的其余部分,但它会抛出此错误:

: 的子级必须有 path 或 default 属性,或者是 &lt;Redirect&gt;。没有在元素类型[object Object]上找到

这是我的两门课

App.js

<LocationProvider>
  <Router basepath={process.env.PUBLIC_URL}>
    <ClientProvider path="/:clientID">
      <CssBaseline />
      <AuthProvider>
        <UserProvider>
          <BusinessLog path="/" />
          <VisitorLog path="visitorLog" />
          <VisitorAccess path="visitorAccess" />
          <DataAccess path="dataaccess" />
        </UserProvider>
      </AuthProvider>
    </ClientProvider>
  </Router>
</LocationProvider>

以及读取url后的CLientProvider

 return loadingClient ? (
<div className={classes.root}>
  <CircularProgress />
 

   </div>
  ) : (

        <ThemeProvider theme={theme}>
          <ClientContext.Provider value={client}>{props.children}</ClientContext.Provider>
        </ThemeProvider>
      );

【问题讨论】:

    标签: path reach-router


    【解决方案1】:

    // 而不是这个

    <Redirect from="/" to="/home" />
    

    // 这样做

    <Redirect path="/" to="/home" />
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-28
      • 2021-10-28
      相关资源
      最近更新 更多