Angular:无效的参数:" ..."的路由生成器未包含在通过

时间:2018-01-12 10:24:20

标签: angular dart angular-dart

我正在使用带参数的子路由配置(AngularDart,包angular_router:^ 1.0.2),并发生以下错误:

  

EXCEPTION:无效的参数:路由生成器" chave"不是   包含在传递的参数中。

我做错了什么?

@RouteConfig定义是:

在Root中

@RouteConfig(const [
  const Redirect(path: '/', redirectTo: const ['Painel']),
  const Route(path: '/painel', name: 'Painel', component: PainelComponent, useAsDefault: true),
  const Route(path: '/empresas/...', name: 'Empresas', component: EmpresasComponent),
  const Route(path: '/iniciativas', name: 'Iniciativas', component: IniciativasComponent),
])

在父级EmpresasComponent中(将参数传递给子级EmpresaDetalheComponent

@RouteConfig(const [
  const Route(path: '/empresa/:chave', name: 'EmpresaDetalhe', component: EmpresaDetalheComponent,
      useAsDefault: true),
])

从Root basead配置定义调用Parent时会出现问题,即使没有调用具有该参数的子进程也是如此。

详情:

导航应该像这样工作: Root>>>父>>>孩子(有参数)=确定

但是这里的param是requerid: Root>>> Parent = Error,即使没有参数传递给父级,也只有子级需要

我做错了什么?

1 个答案:

答案 0 :(得分:2)

我找到了这个问题的原因。

实际上,如果useAsDefault: true位于带参数(p.e./:param)的路由网址中,则会出现此问题。

解决方法是将另一个路径网址不含参数定义为useAsDefault: true