簡単な状況で少しスタックしてください。Observable RxJSからアクションを実行
onUpload$: Subject<SomeUpload> = new Subject<SomeUpload>();
uploadAction$: Observable<Action> = this.onUpload$.map(entity => this.someActionService.upload(entity));
このuploadActionの$の使用が
this.subscription = Observable.merge(
this.uploadAction$
).subscribe(this.store);
アクションは、サーバーbase64で画像を送信し、応答に私はURLを取得状態に基づいて、agnular2コンポーネントにサブスクライブ:だから、私は、ページ上のいくつかのアップロードアクションがどのように見える持っていますこのURLは、テンプレートで使用していないbecose、このURLは私がそう
someResponseUrl$: Observable<String> = this.store.let(getSomeUrlFromState());
のように、次に取得することができ、私は、コールバックのようなものを作る必要があり、私はコード内のデータを操作する必要がありますよ。誰かが助けて説明することができ、この観察可能な文字列からどのように行動を起こしてデータを取得し、コールバックを行うことができますか?アドバイスありがとう!
P.S. ...私はね、この
uploadAction$: Observable<Action> = this.onUpload$.map(entity =>
this.someActionService.upload(entity))
.do(() => {
const subscription =
this.store.let(getSomeUrlFromState()).subscribe(url => {
console.log(url)
});
});
その作業のような何かをしようと、私はそれが解決策として奇妙な方法だと思います
助けてはいけません:(URLは 'null'をURLとして取得し、次に角度2は例外を送出します:: 'mergeMap'と' concatMap'の両方の演算子を使用してみてください – vanless
Canあなたはjsfiddleデモを作っていますか? – martin