2016-07-27 9 views
0

URLからIDパラメータを取得しようとしていますが、params varを定義していないようです。私が間違っている場所を見ることができないので、多分誰かが助けることができます!URLからIDを取得すると、Angams2を使用してparamsが定義されていません

コード

import {Component} from 'angular2/core'; 
import {ROUTER_DIRECTIVES, RouteParams, RouteConfig} from 'angular2/router'; 
import {OnInit} from 'angular2/core'; 

@Component({ 
    selector: 'view-movie', 
    templateUrl : './templates/view-movie.tpl.html', 
    directives: [ROUTER_DIRECTIVES] 
}) 

export class ViewmovieComponent implements OnInit { 

    public movie = {}; 
    public id = String; 

    constructor(params: RouteParams){}; 

    ngOnInit() { 
    this.id = params.get('id'); 
    } 



} 

答えて

0

はそう

import {Component} from 'angular2/core'; 
import {ROUTER_DIRECTIVES, RouteParams, RouteConfig} from 'angular2/router'; 
import {OnInit} from 'angular2/core'; 

@Component({ 
    selector: 'view-movie', 
    templateUrl : './templates/view-movie.tpl.html', 
    directives: [ROUTER_DIRECTIVES] 
}) 

export class ViewmovieComponent implements OnInit { 

    public movie = {}; 
    public id = String; 

    constructor(params: RouteParams){ 

    this.id = params.get('id'); 

    } 

    ngOnInit() { 
    console.log(this.id); 
    } 

} 
0

単にこれ

constructor(params: RouteParams){this.id = params.get('id');} 

    ngOnInit() {console.log(this.id);} 

のいずれかを使用するようなコンストラクタ関数を次のコードブロック内params.getを挿入すると仮定しましたまたはこの1つ

210我々は宣言タイプせずに何かを初期化するならば、我々はコンストラクタ内にアクセスする必要があるが、我々は、コンストラクタの外にアクセスしようとしている場合、それはあなたの最善の策が購読しているthis

+1

使用するようにしなければならないだろうので、 ActivatedRoute.queryParams たとえば、これを見ることができます:https://modewagon.wordpress.com/2017/09/12/access-url-with-params-angular2/ –

関連する問題