【发布时间】:2018-05-22 03:42:30
【问题描述】:
我有点卡在路由组件上。想象一下,我有这两条路线有自己的路径:
<Route path='/person/add' exact component={PersonForm}/>
<Route path='/person/:id' exact component={PersonView}/>
/person/add 应该显示一个表单,我可以在其中创建一个新的人
/person/:id 应该显示一个具有给定 ID 的人。
问题>>如果我导航到 /person/add 它也会显示 /person/:id 的组件,因为字符串“add”对":id"。
有什么办法可以避免这种情况吗?例如告诉 :id 应该是一个数字?
【问题讨论】:
-
/person/add应该只是/person然后没有参数的状态是添加状态,您可以重复使用它进行编辑。这是有道理的:p -
你可能会发现这个感兴趣stackoverflow.com/a/35604855/1915893
-
@AluanHaddad 这确实是我解决它的方法,但我仍然在质疑是否有其他解决方案。谢谢!
-
我明白了。我确信有一种方法,但在 JavaScript 中确定哪些字符串是有效数字是令人惊愕的根源。
标签: javascript reactjs react-router coercion