ActivatedRoute
から降りて約束したが、運がなかったparamsについてobservableを回そうとしています。Angular2 - 'activatedRoute.params'を約束に変えよう
this.riaService.getAdvisorsForState(this.activeState)
.then(rias => {
this.riasForState = rias.json();
console.log(this.riasForState);
});
// this all works^
しかし、私は約束に「activatedRoute.params」を回すことができていない:私は成功した約束にhttp
要求をオンにすることができました
export class InvestmentAdvisorStateComponent implements OnInit {
constructor(private activatedRoute: ActivatedRoute, private riaService: InvestmentAdvisorService) { }
getStateFromUrl() {
this.activatedRoute.params
.toPromise()
.then(params => {
console.log('HERE',params)
});
}
// this does not work for me^
これは私が右の持っているものです今:約束はそう思ったとして
getStateFromUrl() {
this.activatedRoute.params
.subscribe((param: any) => {
this.activeState = param['state'];
});
}
// works^
私は私がこれを実装することのオフ.then
をすることができます期待しています。どのようにこれを行うにはどんな助けにも大変感謝しています。
どのような動作が期待されますか?この約束は、サーバーからの応答が到着したときに 'http.get()'が完了している間に、そのルートから遠ざかるときに完了するのではないでしょう。 –
@GünterZöchbauerああ、私はそれを実現しませんでした。私は '.subscribe'で今持っている機能を表示するために投稿を編集しました。私は私の観察可能性を約束に変えようとしているので、 '.then'と連鎖することができます – georgej
なぜ' .map() 'だけではないのですか –