2016-09-20 56 views
3

我得到了一個Angular2服務應該從URL像http://localhost:3001/?foobar=1236Angular2 queryParams拋出錯誤

import { Injectable } from '@angular/core'; 
import { ActivatedRoute }  from '@angular/router'; 
import 'rxjs/add/operator/map'; 

@Injectable() 

export class ParameterService { 
    constructor(private route: ActivatedRoute) { } 

    getParameter() { 
    return this.route.snapshot.queryParams.foobar; 
    } 
} 

返回參數,但「對類型不存在」當我打電話的服務,我得到的getParameter()方法錯誤:

error TS2339: Property 'foobar' does not exist on type '{ [key: string]: any; }' 

和錯誤後它返回正確的結果。我可以通過調試器訪問foobar參數,沒有任何問題。有人有類似的問題嗎?我可以想象它會提早召喚?

(可能重複:angular2 rc6: Property queryParams does not exist on type RouterState

回答

5

這是你如何得到參數:

this.route.snapshot.queryParams['foobar']; 
+1

感謝的人!發佈後兩分鐘我發現它...始終如此:/ –