当前位置: 首页 > 知识库问答 >
问题:

当我的路由放置在子组件中时,url正在更改,但组件未呈现

乜华翰
2023-03-14
import './App.css';
import AppRoutes from './AppRoutes'
import {BrowserRouter as Router} from "react-router-dom"
import AppHeader from './modules/platform-components/app-header/AppHeader'

function App() {
  return (
    <div className="App">
      <AppRoutes />
    </div>
  );
}

export default App;```

// Above is my App.js

```import React,{Component} from "react"
import {Route,Switch} from "react-router-dom"
import Login from "./modules/authentication/login/Login"
import BaseApp from "./modules/platform-components/base-app/BaseApp"
export default function AppRoutes (){

        return (
            <Switch>
                <Route path="/" exact component={Login}/>
                <Route path="/login" component={Login}/>       
                <Route exact path="/app" component={BaseApp}/>
            </Switch>           

        )

}```

//above is AppRoutes.js

导入React,{Component}from'./Routes'导入AppHeader from'.../app-头/AppHeader'导入{路由,交换机,链接,与路由器,使用RouteMatch}from"report-router-dom"函数BaseApp(){let Match=useRouteMatch()返回(Base App Component App Header
)}导出默认BaseApp;"'

//这是我的baseApp

 function Appheader(){
        return (
            <div>App Header Component</div>
        )    
}
export default Appheader;```

//above is my app header 
`when i am entering url /app it isnavigating to baseApp component but when i enter /app/appheader it's not rendering anything but url is changed `

共有1个答案

谷梁存
2023-03-14

用这个交换你的路线

<Switch>
   <Route exact path="/" exact component={Login}/>
   <Route path="/app" component={BaseApp}/>
   <Route path="/login" component={Login}/>       
   <Route component={() => <div>Not Found</div>}/> // you could also add this line to cater with your 404 routes
</Switch>

请在此处阅读更多信息:https://github.com/ReactTraining/react-router/blob/master/packages/react-router/docs/api/Route.md

 类似资料:
  • 在标记为副本之前,请仔细阅读此内容,我向您保证,我已经阅读并尝试了每个人在stackoverflow和github上提出的关于此问题的所有建议。 我在我的应用程序中有一条路线,如下所示; route rendering呈现打开用户角色的组件,并基于该角色惰性加载正确的Routes组件,Routes组件呈现主页的开关。简化后,如下所示。 然后是路由组件 因此,问题是每当用户从/导航到/秒等...应用

  • 我使用的是react-router-dom version4.3.1,单击链接后,URL会发生变化,但不会呈现React组件(事实上,调试器不会在代码中的任何位置停止)。我已经尝试使用和关键字,但这并不起作用。在以下两种解决方案中提到了它:React router更改url,但不查看;React route使用browserhistory更改url,但什么也不发生;它唯一起作用的时候是使用refr

  • 我试图渲染父组件子组件与默认渲染组件通过相同的路由。 例如 父母组件可以通过此路由访问/破折号/概述现在在父母组件中,我想呈现一个与父母组件具有相同路由的默认组件。 ParentComponent.js 我想渲染。。它工作正常,但当我将路径更改为时,它不会呈现 我正在使用路由器在路由之间切换,我也在使用

  • 我对JS的反应有点陌生。我有两个问题。我来了 现在我要做的是,当应用程序组件挂载时,我生成一个对后端服务器的ajax调用,当它返回时,它更新道具,并设置状态,这样子组件也会重新呈现,但子组件不会重新呈现。谁能告诉我出了什么问题。 问题2 现在让我们假设我将进入组件二路由,它将呈现组件二,我在应用程序组件中生成一个ajax调用,根据ajax调用返回的数据,我在应用程序组件中设置了一些道具,我还希望组

  • 编辑:这是在添加到购物车按钮onclick事件时执行的函数: addToCart action creator如下所示:

  • 我有一个非常简单的功能组件,它从localStorage获取日期并显示它。我有两个按钮来添加或删除日期后的周数,我希望显示新的日期。但是,该组件不会被渲染。 此组件的预期行为是获取时间戳,然后显示该时间戳的月份和年份。加载时,它正确地显示了2021年1月,但是当我在onLefthtml上单击几次时,它并没有呈现组件,尽管我期望它显示2021年12月。计算是正确的,我想我在这里丢失了功能组件渲染的概