3
在AngularJS
我们能够使用$rootScope
的$routeChangeStart/End
事件指定路线更改事件以观察路线对象中的更改。 Angular2中的路由改变事件的等价物是什么?
我们如何能做到下面的代码这个确切的功能在Angular2
$scope.$on('$routeChangeStart', function (scope, next, current) {
//do what you want
});
我得到了一些disucussions这里,但没有更多的细节,所以我问了一个新问题。
import {
Router, ActivatedRoute,
NavigationEnd, NavigationStart,
NavigationError, NavigationCancel,
} from '@angular/router';
// constructor method of some angular element
constructor(
private _router: Router,
) {
this._router.events
.filter(event => event instanceof NavigationStart)
.subscribe(event => {
console.log("New route");
});
}
编辑:
angular2 $routeChangeStart , $routeChangeSuccess ,$routeChangeError
此外,您应该在RouterModule.forRoot中启用事件 –
这是什么意思? enableTracing? –
是的,这是正确的 –