通过 react-router 处理带有斜线的路径的方法是什么?

我在使用 react-router 进行动态路由时遇到问题。我的示例路径如下所示:


/contacts/C/BG-DPC-063

这是我的路线:


<Route path='/contacts/:contactId' component={Contacts}/>

所以当我试图处理我的比赛时:


const {

    params: { contactId }

} = match;

由于斜线,contactId 只是“C”。我该如何处理?这是来自 API 的 ID,因此我无法更改。


慕仙森
浏览 307回答 2
2回答

斯蒂芬大帝

你为什么不使用:<Route&nbsp;path='/contacts/:contactPrefix/:contactSuffix'&nbsp;component={Contacts}/>那你以后合并吗?

慕码人8056858

这完全取决于 URL 的哪些部分是动态的?如果“C”不是动态的<Route&nbsp;path='/contacts/C/:contactId'&nbsp;component={Contacts}/>除此以外<Route&nbsp;path='/contacts/:apiID/:contactID'&nbsp;component={Contacts}/>如果第二个例子是这样的话,一定要处理非现有appID和/或contactID情况,因为用户可以输入任何有效/无效:appID和/或:contactID在URL(如果无效,重定向他的其他页面或显示一些消息)。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript