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

React组件未在已更改的路由上渲染

樊杰
2023-03-14

我试图渲染父组件子组件与默认渲染组件通过相同的路由

例如

父母组件可以通过此路由访问/破折号/概述现在在父母组件中,我想呈现一个与父母组件具有相同路由的默认组件。

ParentComponent.js

                <Switch>
                  <Route path="/dash/overview/" render={() => <SubComponentOne/>}/>
                  <Route path="/dash/subtwo" render={() => <SubComponentTwo/>}/>
                </Switch>

我想渲染子组件音调。。它工作正常,但当我将路径更改为/dash/subtwo时,它不会呈现子组件two

我正在使用路由器链接在路由之间切换,我也在使用哈希路由器

共有1个答案

池兴邦
2023-03-14

你需要有确切的关键字为SubComponentOne路由

            <Switch>
              <Route exact path="/dash/overview/" render={() => <SubComponentOne/>}/>
              <Route path="/dash/subtwo" render={() => <SubComponentTwo/>}/>
            </Switch>
 类似资料:
  • 当按下{Link}并更改路由时,即使在react router dom的交换机组件之外,报头组件NavBar也会保持重新命名。 这里是文件: Main index.js文件: Home.js Contact.js 当前的项目非常简单:index.js文件包含Home和Contact组件,NavBar组件作为交换机外部的头。

  • 大家好,我不知道发生了什么事。我有以下路线: 只有路径为“/”的路由和路径为“/patient/:id”的路由才有效,其他3条路由只是没有显示与路径对应的组件。 这就是我进入路线的方式。我有一个标题组件,上面有正确的链接。见下文 在头组件中,我从'react router dom'导入{Link};在我声明路由的文件中,我从'react router dom'导入{BrowserRouter,Ro

  • 我已经设置了两条不同的路线,但是两条路线都被渲染localhost:3000 我已经研究了关于同一问题的stackoverflow问题,但没有解决我的问题。 我把我的路线包装在开关中,试着交替路线的顺序,使用精确的,也强迫id只寻找数字。 有提到-反应路由器v4-渲染两个组件在同一路由 但无法解决我的问题 Table和Detail组件都是为localhost:3000渲染的,而我只想为localh

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

  • 问题: 有异步路由,从中获取参数并返回(组件)。问题是当我从一个到另一个(只是相同的路由,但不同。参数)我的路由器卸载并重新渲染组件。但它应该只传递新的道具,不要触及我的组件生命周期。怎么解决呢?我做错了什么? 代码: 路由器 组件将装入电影组件中 更新:好的,做了一些实验。 替换

  • 我有一个React应用程序,它声明了一些路由: (是检查会话的哑组件,调用