2015-05-29 76 views
2

所以,我试过所有这些,但都没有工作。同样的错误的ReactJS路由可选ID的URL参数

<Route name="create-course" handler={CreateCourse} path="/course-builder/create-course/{:id}" /> 
<Route name="create-course" handler={CreateCourse} path="/course-builder/create-course/[:id]" /> 
<Route name="create-course" handler={CreateCourse} path="/course-builder/create-course{/id}" /> 

变种:

Error: Invariant Violation: Missing "id" parameter for path "/course-builder/create-course/{:id}" 

/{:?ID}一个不会引发错误,但URL成为

/course-builder/create-course/%7B%7D 

请帮助!

回答

2

PARAM :id后添加?,像这样

<Route name="create-course" handler={CreateCourse} path="/course-builder/create-course/:id?" /> 
+0

谢谢!实际工作的唯一解决方案。 – premunk

0

万一别人绊倒在这个问题 - 因为阵营 - 路由器的V1.0.0正确的语法是:

<Route name="create-course" handler={CreateCourse} path="/course-builder/create-course(/:id)" /> 

文档here