2017-05-30 4 views
0

ユーザーがURLを直接貼り付けると、ルートにリダイレクトしようとしています。私はここにURLngOnitのルートにリダイレクトする方法は?

http://localhost:3000/en/sell/confirmation

を打つ上/ EN /販売ページにユーザーを指示したい

は私のコードは、

ngOnInit() { 
    this.storedListing = this.sellerFlow.getSellerFlowObject(); 
    if (this.storedListing === null) { 
     this.router.navigate(['./']); 
    } 
    } 

である私はthis.routerを取得見ることができますアプリケーションは変更されません。どうした?あなたは/en/sell//en/sell/confirmationから行きたい場合は../を使用する必要が

答えて

1

this.router.navigate(['../']); 

documentationを参照してください。

+0

全くその作業のいずれか –

+0

ませんあなたはこの '試すことができます.router.navigate(['/ ja/sell']); ' – Saravana

0

あなたが代わりにあなたのルーティングからリダイレクトすることができませんでした:

{ 
    path: 'en/sell/confirmation', 
    redirectTo: 'en/sell', 
    pathMatch: 'full' 
}, 
0
import {OnInit} from '@angular/core'; 
import {Router} from '@angular/router'; 

export class AddDisplay { 
    constructor(private router: Router){} 
    ngOnInit() { 
    this.router.navigate(['./SomewhereElse']); 
    } 
} 
0

あなたは以下のように、relativeToのparamを指定する必要があります。

import { ActivatedRoute, Router } from '@angular/router'; 

constructor(private route: ActivatedRoute, private router: Router) { } 

ngOnInit() { 
    this.storedListing = this.sellerFlow.getSellerFlowObject(); 
    if (this.storedListing === null) { 
    this.router.navigate(['../'], { relativeTo: this.route }); 
    } 
} 
関連する問題