質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Angular

Angularは、JavaScriptフレームワークです。AngularJSの後継であり、TypeScriptベースで実装されています。機能ごとに実装を分けやすく、コードの見通しが良いコンポーネント指向です。

Q&A

解決済

1回答

609閲覧

HttpParamsにパラメタをset出来ない

watarinrin78

総合スコア10

Angular

Angularは、JavaScriptフレームワークです。AngularJSの後継であり、TypeScriptベースで実装されています。機能ごとに実装を分けやすく、コードの見通しが良いコンポーネント指向です。

0グッド

0クリップ

投稿2018/09/15 06:05

前提・実現したいこと

HttpModuleをつかって、HTTP GETによってリクエストを送信したい。
serviceでHttpParamsとセットするapiを実装して、コンポーネント側からの呼び出しでパラメタをsetしているのですが、nullになってしまいます。
ご教示の方、何卒よろしくお願いいたします。

該当のソースコード

typescript

1 /*service*/ 2 private Params = new HttpParams(); 3 4 setParams(key: string, val: string) { 5 this.Params.set('key', val); 6 console.log(this.SearchParams.get('area')); 7 }

typescript

1 /*compornet*/ 2 constructor(private sv: Service) { } 3 4 ngOnInit() { 5 this.sv.setParams('key','aaaa'); 6 } 7

nullになってしまいます。。

イメージ説明

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

サービス側で生成してsetするのでなく、compornet側で生成したオブジェクトを受け渡すようにして解決しました。

typescript

1 /*service*/ 2 3 private Params: HttpParams; 4 5 setParam(Params: HttpParams) { 6 this.Params = Params; 7 }

typescript

1 /*compornet*/ 2 constructor(private sv: Service) { } 3 4 ngOnInit() { 5 let params: HttpParams = new HttpParams().set('area', area); 6 this.sv.setParams(params); 7 } 8

投稿2018/09/15 08:51

watarinrin78

総合スコア10

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問