首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用react-router删除根路由中结尾/

如何使用react-router删除根路由中结尾/
EN

Stack Overflow用户
提问于 2019-04-02 02:45:58
回答 4查看 2.4K关注 0票数 0

我有几条路线:

代码语言:javascript
运行
复制
 www.example.com/rootRoute/flags
 www.example.com/rootRoute/test
 www.example.com/rootRoute/derp

对于路由主页,我希望我的路由是:

代码语言:javascript
运行
复制
 www.example.com/rootRoute

但是react-router在最后强制使用/,所以我的根路由是:

代码语言:javascript
运行
复制
 www.example.com/rootRoute/

你知道怎么解决这个问题吗?

代码语言:javascript
运行
复制
 "react-router": "^4.3.1",
 "react-router-dom": "^4.3.1",

我已经在交换机中设置了路径,并将其路由到所需的路径,但在地址栏中总是附加一个/。

代码语言:javascript
运行
复制
 <Switch>
  <Route path={'/rootRoute/flags'} component={FeatureFlagsPage} />
  <Route path={'/rootRoute/test'} component={DerpComponent} />
  <Route path={'/rootRoute'} component={TestComponent} />

我希望在根路由的末尾没有/。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2019-04-02 03:26:41

我最终使用了history.replaceState('','State Title','Root Path');

在我的索引组件中。

票数 0
EN

Stack Overflow用户

发布于 2019-04-02 02:51:03

以下是一些小更改:

/rootRoute移到顶部,并向其添加exact。去掉花括号..。

代码语言:javascript
运行
复制
<Switch>
  <Route exact path='/rootRoute' component={TestComponent} />
  <Route path='/rootRoute/flags' component={FeatureFlagsPage} />
  <Route path='/rootRoute/test' component={DerpComponent} />
</Switch>
票数 1
EN

Stack Overflow用户

发布于 2020-08-20 06:07:11

您可以向路由器添加基本名称,如下所示:

代码语言:javascript
运行
复制
<Router basename='/rootRoute'>
  <Switch>
    <Route exact path='/' component={ TestComponent }/>
    <Route path='/flags' component={ FeatureFlagsPage }/>
    <Route path='/test' component={ DerpComponent }/>
  </Switch>
</Router>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55461670

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档