2017-08-21 5 views
2

だから、のparamsはありません。この方法では、ロジックがAngular4:HttpParamsでパラメータを設定するには?

const params = new HttpParams(); 

if(expression) { 
    params.set('foo', 'bar'); 
} 

this.http.get('url.json', {params: params}); 

非常に簡単です.... HttpClientを、私は私のget要求のためのparamsを設定するHttpParamsを使用しようとしていますへのhttpから

を移行通りました! params.set( 'foo'、 'bar');何もしません...(関係なく、条件のが満たさ;))

私はこのかかわらずのようにそれを行う場合:

const params = new HttpParams().set('foo', 'bar'); 

fooが設定されています!

私のケースでHttpParamsを使用するにはどうすればよいですか?

答えて

5

この

let params = new HttpParams(); 

if(expression) { 
    params = params.set('foo', 'bar'); 
} 

API試してみてください。

/** 
* Construct a new body with a new value for the given parameter name. 
*/ 
set(param: string, value: string): HttpParams; 
+0

は、letで試してみました、私を信じて、それは関係なく、私はparams.setを設定回数....値を設定していないされていませんがその後、コンストラクタに連結されたものだけが設定されます:/ –

+1

forgot params = params.set( 'foo'、 'bar') –

+1

これは今動作しています...奇妙なパターン: –

関連する問題