3

我在 Angular 2 Dart 工作,但我应该能够翻译任何 JS 或 TS 示例。

1)如何获得所有已注册路线的列表?

2)如何从已注册的路线中删除路线?

我知道我可以通过以下方式动态添加:

  ...
  final Router router;

  AppComponent(this.router){
    this.router.config([
      Route(path: '/Page-0', component: Page0Route, name: 'Page-0')
    ]);
  }
  ...

但尚未制定列出和删除路线。

4

1 回答 1

3

据我所知,目前还没有官方的方式。包含已配置的RouteRegistry路由,但它不提供公共成员来访问它们,并且在 Dart 中,您无法像在 TypeScript 中那样访问私有字段来解决此限制。

我看到的唯一解决方法是扩展RouteRegistry类并将您的自定义实现添加为RouteRegistry类型的提供者,然后ROUTE_PROVIDERS确保采用您的自定义实现。不过,我还没有尝试过。

于 2016-01-14T16:53:30.257 回答