<Route exact path="/tasks/:id" render={(props) => (
<AsyncTask {...props} profile={this.state.profile} />
)} />
/tasks/:id/notification/:notificationId
/tasks/:id/(notification/:notificationId)?
/tasks/:id/(notification)?/:notificationId?
但它匹配和路径没有notificationid
可悲的是,似乎没有办法做到这一点。理想的方法是为您的目的创建两个单独的路线。
<Route exact path="/tasks/:id" component={...} />
<Route exact path="/tasks/:id/notification/:notificationId" component={...} />
如果您确实必须只声明一条路由,则可以使用自定义regex规则(在参数名称声明之后用括号括起来的部分):
<Route exact path="/tasks/:id/:notificationId(notification/\d+)?" component={...} />
然而!!-注意notificationid
参数将包括子字符串“notification”
。例如,如果您有:
但不是:
任务/123/通知
tasks/123/notification/abc
任务/123/456
等等...
问题内容: 我可以设置带有可选参数的路由(相同的模板和控制器,但是如果某些参数不存在,则应将其忽略)? 因此,只编写一个规则,而不是编写以下两个规则? 这样的事情([此参数是可选的]) 我在他们的文档中找不到任何内容。 问题答案: 看来Angular现在已对此提供支持。 从最新的(v1.2.0)文档中: 可以包含带问号()的可选命名组
我对如何从根开始做(多个)可选路径参数有点困惑。我用的是React-Router3和Redux4.3。 据我所知,应该可以工作,但在加载应用程序时,我遇到了以下错误:
我在SwaggerHub注册,并使用OpenAPI3.0创建了一个新的API。在我的API中,路径有2个非必需参数,但我不能将它们设置为not required--编辑器显示“not alleving values”错误。 以下是我的API定义: 但是,如果删除属性,则会出现2个错误: 什么是有效的语法?
阅读使用的所有优点,但是,如果我们想在查询参数使用此属性时拥有可选参数,它不起作用。它仍然将所有参数验证为强制性的。知道如何使其可选吗? 执行此代码时,它始终需要 。没有此参数,它不会运行。 编辑:即使传递了id的默认值,它也不起作用。
所以我有一些路线,比如<code>/category/tech</code>和<code</categority/tech/new<code>和<code>/category/tech/old</code>等等 他们都使用 或者我必须分别定义它们,就像
问题内容: 我想用可选的path参数声明一个路径,因此当我添加它时,页面会做一些额外的事情(例如,填充一些数据): http:// localhost / app / path / to / page <=渲染页面 http:// localhost / app / path / to / page / pathParam <=根据pathParam使用某些数据渲染页面 在我的React Rout