3
假設我有一個文件流filesStream
和一個函數uploadFile
,它返回一個值(Rx.Observable.fromPromise(...))的流。在流文件可以通過簡單的flatMap
上傳:用相應的flatMap結果壓縮值
filesStream.flatMap(uploadFile)
我需要的是從filesStream
與相應的響應從uploadFile
zip文件:
zippedStream.subscribe(
(file, response) => console.log("File " + file.name + " uploaded: " + response.message)
)
,我想出了一個相當混亂的方法這不工作
var zipppedStream = filesStream.flatMap(
(file) => uploadFile(file).zip(Rx.Observable.just(file), (r, f) => [r, f])
)
但我真的不喜歡它,因爲我需要解壓在二值陣列,它通常看起來很重。 這是你如何做,或者我失去了一些東西?
'zippedStream.subscribe( (文件,響應)'<---你不能有,因爲'onNext'處理函數的簽名意味着只有一個參數傳遞,你可以解構它:'zippedStream.subscribe( ([file,response])' – zerkms