當鉻調試,我可以看到這個對象:訪問查詢字符串PARAM在angular2與this.activeRoute.queryParams._value
this.activeRoute.queryParams._value
activeRoute
在我的構造函數傳遞作爲 private activeRoute: ActivatedRoute
當我'm in vs code and type this.activeRoute.queryParams
,._value
不是可用對象。有沒有人去訪問該對象?
只是想發佈我最終使用的代碼。
this.activeRoute.queryParams.subscribe((params: Params) => {
let context = params['context'];
this.context = context;
});
也不要忘了PARAMS添加到import語句
import {Router, ActivatedRoute, Params} from '@angular/router';
'_value'是queryParams'的'私有成員 - 只有類本身可以訪問它。由於JavaScript沒有私有或公共範圍的概念,因此您可以從技術上訪問代碼中的成員,但TypeScript不允許您編譯它,因此它不起作用。 –
你可以在這裏看到如何從你的代碼訪問查詢參數:http://stackoverflow.com/questions/35688084/how-get-query-params-from-url-in-angular2 –
好的,謝謝你的信息。我正在嘗試使用this.activeRoute.snapshot.queryParams ['context']獲取querystring參數,但它沒有得到正確的值。我認爲它獲得了以前的價值。我注意到,儘管在chrome中this.activeRoute.queryParams._value.context確實包含正確的值。 – Rich