<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Observable.forkJoin</title>
<link rel="stylesheet" href="style.css">
<script src="//unpkg.com/rxjs/bundles/Rx.js"></script>
</head>
<body>
<script src="app.js"></script>
</body>
</html>
const {Observable} = Rx
const storiesUrl = 'https://hacker-news.firebaseio.com/v0/topstories.json'
const itemUrl = id => `https://hacker-news.firebaseio.com/v0/item/${id}.json`
const body = document.querySelector('body')
Observable.ajax(storiesUrl).map(e => e.response.slice(0,3))
.switchMap(ids => Observable.forkJoin(ids.map(id => {
const url = itemUrl(id)
return Observable.ajax(url).map(e => e.response)
})))
.subscribe(result => result.map(story => {
body.innerHTML += `<div>${story.title}</div>`
}))
body{
font-family: Menlo, monospace;
}