2017-06-17 9 views
0

IDが「ルート」のパラメータを使用するにはString?IDが「4」のルートパラメータを文字列に使用する

{path: 'param/:id', component: MyComponent}

let id = this.route.snapshot.params['id'];
取得するには、ルートのスナップショットを使用して、任意のアイデア

BLOCKQUOTE

+0

問題は何ですか?あなたはURLからIDを取得したいですか?あなたはIDでナビゲートしたいですか? –

+0

質問が明確でない –

+0

はい、私はidでナビゲートしたいです。しかし、IDの角度タイプでは数字ですが、IDのタイプがSTRINGの場合 –

答えて

1

表示されているようにクエリのパラメータはidにする必要があります。アウト

this.router.navigate(['/example', id]); 

チェック:次に

// (+) converts string 'id' to a number 
let id = +this.route.snapshot.params['id']; 

:あなたは、ナビゲーションのルートパラメータでそれを使用できるように、暗黙的に数値にその文字列を変換したい場合は、+を持つ変数の前に付けることができますドキュメントのクエリパラメータを取得するこの例は、 https://angular.io/guide/router#snapshot-the-no-observable-alternativeです。あなたは数に文字列から変換するためにこのコードを使用することができるコンポーネントで

+0

ありがとう、私は試してみます。 –

+0

+の意味はいつも不思議です。それは実際に私の問題でした。彼らが+を使うヒーローのツアーに従った。ここで私はUUIDを扱い、すべての+を削除しなければなりません。ありがとうございました。 – hogan

0

constructor(private route: ActivatedRoute) { } 

    ngOnInit() { 
    this.route.paramMap 
     .subscribe((params: ParamMap) => { 
     let id = +params.get('id'); // This line converts id from string into num 
     }); 
    } 
関連する問題