ComponentInstruction和CanActivate在角度2 rc1

时间:2016-05-10 14:57:33

标签: typescript angular angular2-router

我正在使用带有角度2 rc.1

的打字稿编写angular2应用程序

我猜测角度2文档还没有更新。

https://angular.io/docs/ts/latest/api/router/ComponentInstruction-interface.html

https://angular.io/docs/ts/latest/api/router/CanActivate-decorator.html

在angular2-rc.1中不再提供ComponentInstruction接口和CanActivate装饰器。反而是什么?

我有以下课程需要升级到最新的角度版本。

class RequireUserAnnotation extends CanActivate {
  constructor() {
    super(this.canProceed.bind(this));
  }

  canProceed(prev: ComponentInstruction,
         next: ComponentInstruction) {
    return !!Meteor.user();
  }
}

新的@ angular / router包现在有CanDeactivate和OnActivate。这让我有些困惑。

我猜是的 https://angular.io/docs/js/latest/api/router/CanDeactivate-interface.html 也没有更新,因为它说:The routerCanDeactivate hook is called with two ComponentInstructions as parameters,并且不再定义ComponentInstruction。

我不想使用angular/@router-deprecated包。我想解决这个问题!请! :)

非常感谢有关该问题的任何信息。

1 个答案:

答案 0 :(得分:3)

这还没有实施。见https://github.com/angular/angular/issues/4015#issuecomment-217678683

  

昨天有没有人参加布兰登的研讨会(https://www.ng-conf.org/#/sessions/bdogg64FD)?计划在加载路线之前讨论解决数据问题,并且似乎一直在使用新的路由器(CanActivate移动/重新定位)。

  

我参加了会议:微笑:我没有在加载路由之前解决数据,因为新路由器中还没有这种机制。

也许https://github.com/angular/angular/issues/7784#issuecomment-217912079