Javascript 路由参数“原因”中的数组;“预计不会重复”;警告

Javascript 路由参数“原因”中的数组;“预计不会重复”;警告,javascript,vue.js,vue-router,Javascript,Vue.js,Vue Router,当我尝试使用数组作为参数创建路由器链接时,链接可以工作,但我收到以下警告: 命名路由“开始运行”缺少参数:预期“文件”不会重复,但收到[“aaa”] router.js ... { path: '/start-run/:config?/:files?', name: 'start-run', component: StartRun, props: true }, ... file.vue ... <router-link :to="{name: 'start-run',

当我尝试使用数组作为参数创建
路由器链接
时,链接可以工作,但我收到以下警告:

命名路由“开始运行”缺少参数:预期“文件”不会重复,但收到
[“aaa”]

router.js

...
{
  path: '/start-run/:config?/:files?',
  name: 'start-run',
  component: StartRun,
  props: true
},
...
file.vue

...
<router-link :to="{name: 'start-run', params: { config: 'test', files: ['aaa'] }}">...</router-link>
...
。。。
...
...

我没有找到修复此警告的文档。

我相信错误消息来自于regexp的
路径
版本1.7.0,该版本由Vue路由器使用:

问题是数组被视为多个值,但路径中的参数不支持多个值


通过将数组传递给
文件
,不清楚您试图实现什么。您定义的路由路径为
:files?
使用了
后缀,这使得它是可选的,但不允许使用数组。也许你指的是
:files*
:files+
?或者您只是想传递数组中的第一项?

我假设
用于任何可选参数,我需要的是
:files*
。在我看来,
*
的用法与@Opsse混淆。语法基于RegExp修饰符。所以
表示0或1,而
*
表示0或更多。regexp的
路径
的更高版本已经取消了对使用
*
作为通配符的支持,因为这会导致混淆和歧义。