2017-08-14 4 views
0

J'essaie de mettre à jour mon application NativeScript. Mes problèmes sont avec le nouveau routage à venir avec la mise à niveau d'Angular. Ma dépendance à package.json:Problèmes de mise à niveau app.component.ts @ angular/router et nativescript-angular/router

"@angular/router": "3.0.0-beta.2" 

après sa mise à niveau:

"@angular/router": "4.1.0", 

Je sais maintenant qu'il ya un nouveau routage et je ne peux pas vraiment entrer.

J'ai du mal à mettre à jour mon application.component.ts.

Je ne peux pas comprendre comment mettre à jour le routage, quelqu'un peut-il me donner un indice?

Répondre

2

Vous n'avez pas besoin d'importer les directives dans app.component.ts.

font place ceci:

import {RouterExtensions} from "nativescript-angular"; 
@Component({ 
selector: "my-app", 
template: "<page-router-outlet></page-router-outlet>"}) 
export class AppComponent{ 
constructor(private app : ApplicationService, private router:RouterExtensions){ 
this.router.navigate(["/SOME-ROUTE"]); 
} 

Et ne pas oublier d'importer "NativeScriptRouterModule, NativeScriptRouterModule.forRoot (routes)" dans votre module.

+0

Merci beaucoup! Le export.app.routes devrait fonctionner comme ceci, n'est-ce pas? Ou ai-je oublié quelque chose? Edit: pourriez-vous jeter un oeil à mon code mis à jour? –

+0

@ Rüdiger avez-vous une route "racine"? sinon, vous devez ajouter - this.routerExtensions.navigate (["/ XXX"]). vous n'avez pas besoin d'injecter le "routeur" lui-même. utilisez plutôt "RouterExtensions" pour une navigation simple (sauf si vous avez une bonne raison d'utiliser le routeur de base) – MatanCo

+0

Je mets à jour mon message pour l'élément-routes. Je ne suis pas sûr si vous pourriez utiliser RouterExtensions déjà dans Angular/[email protected], puisque l'application a été développée sous ceci. Si vous pouviez déjà l'utiliser là-bas, il pourrait y avoir une raison pour laquelle ils ne l'ont pas fait (quelle que soit la raison) –