Resolving Multiple Promise With Rx.js,有没有更好的方法?
Resolving Multiple Promises With Rx.js, is there a better way?
好吧,我正在用 Rx.js 练习一些方法。我写了一段代码来解决多个承诺。只是想知道我是否以正确的方式做这件事,还是有更好的方法(也许更短)?
var urls = ["https://api.github.com/users/manju4ever","https://api.github.com/users"];
var responseList = Rx.Observable
.merge(urls.map(eachUrl =>
Rx.Observable.fromPromise($.getJSON(eachUrl))));
responseList.subscribe(response => console.log(response));
Output: Two JSON Objects from github api.
我可能会使用 fromArray
+ flatMap
代替:
var urls = ["https://api.github.com/users/manju4ever","https://api.github.com/users"];
var responses = Rx.Observable.fromArray(urls)
//Implicitly handle the promises
.flatMap(function(url) {
return $.getJSON(url);
});
responses.subscribe(function(res) {
console.log(res);
});
好吧,我正在用 Rx.js 练习一些方法。我写了一段代码来解决多个承诺。只是想知道我是否以正确的方式做这件事,还是有更好的方法(也许更短)?
var urls = ["https://api.github.com/users/manju4ever","https://api.github.com/users"];
var responseList = Rx.Observable
.merge(urls.map(eachUrl =>
Rx.Observable.fromPromise($.getJSON(eachUrl))));
responseList.subscribe(response => console.log(response));
Output: Two JSON Objects from github api.
我可能会使用 fromArray
+ flatMap
代替:
var urls = ["https://api.github.com/users/manju4ever","https://api.github.com/users"];
var responses = Rx.Observable.fromArray(urls)
//Implicitly handle the promises
.flatMap(function(url) {
return $.getJSON(url);
});
responses.subscribe(function(res) {
console.log(res);
});