tutorial que días día dias con javascript angular angular2-routing

javascript - que - Error de texto mecanografiado angular 2 cuando se utiliza la función de suscripción en un enrutador nuevo(rc 1)



que es un observable angular (1)

Estoy intentando configurar la autenticación para mi aplicación Angular 2 con el nuevo enrutador. Alguien sugirió probar lo siguiente:

constructor (private _router: Router) {} ngOnInit(){ this._router.subscribe( next => { if (!userIsLoggedInOrWhatever) { this._router.navigate([''Login'']); } } ) }

Sin embargo, este problema es que esto da como resultado el error de mecanografiado

(app.component.ts (47,22): error TS2339: la propiedad ''subscribe'' no existe en el tipo ''Router''.

Esto es extraño porque la documentación muestra claramente que un objeto Router tiene esta función. Puedo llamar a otras funciones como enrutador.navigate ([''/ url'']). ¿Ustedes tienen una idea de cuál podría ser el problema?


nuevo enrutador

constructor(router:Router) { router.events.subscribe(event:Event => { if(event instanceof NavigationStart) { } // NavigationEnd // NavigationCancel // NavigationError // RoutesRecognized }) }

original

La clase Router tiene un EventEmitter que puedes suscribirte:

ngOnInit(){ this._router.changes.subscribe( next => { if (!userIsLoggedInOrWhatever) { this._router.navigate([''Login'']); } } ) }

Para saber cómo obtener la ruta anterior, vea ¿Cómo detectar un cambio de ruta en Angular 2? ( pairwise() )