2017-06-04 22 views
3

我想使用「product /:id」, 從類似於「sample.com/product/45」的鏈接中獲取參數這裏是我的路由聲明:如何使用Angular 2中的「/:params」獲取參數

export const routes: Routes = [ 
    { path: 'product/:id', component: Product } 
]; 

下面是組件類

export class Product implements OnInit, OnDestroy { 
    id: number; 
    private sub: any; 

    constructor(private route: ActivatedRoute) {} 

    ngOnInit() { 
    this.sub = this.route.params.subscribe(params => { 
     this.id = +params['id']; 

     console.log(this.id); //I get undefined here 
    }); 
    } 

    ngOnDestroy() { 
    this.sub.unsubscribe(); 
    } 
} 

當我試圖CONSOLE.LOG()的ID,我得到未定義

+0

你看到路徑參數嗎? – Sajeetharan

+0

是的,它繼續顯示,當我訪問鏈接 – Saad

+0

沒有它進入ngOnit時,當你調試? – Sajeetharan

回答

2

試試這個,

ngOnInit() { 
    this.id = this.activatedRoute.snapshot.params["id"]; 
} 
相關問題