在Beta 17中,URL被传递给订阅者,如此
_
在rc 1中我认为你必须订阅router.changes发射器但是没有传递参数? this.router.changes.subscribe(函数(URL){ // url始终为null } .bind(本)); 是否有其他方式来订阅rc1中的路由器更改
答案 0 :(得分:1)
我也遇到了这个问题。从查看路由器代码,这是从router.changes()observable返回的内容:
this._changes.emit(null);
换句话说,.changes()会触发一个事件,让您知道路由已更改,但它不会为您提供仅发出null的值,希望这将在将来的版本中更新。作为现在的解决方法,我这样做的方法是订阅可观察的更改,然后检查location.path()以获取当前值:
this.router.changes.subscribe(() => this.state = this.location.path());