Observable from Promise

by Suman Kumar

HTML

<div>
<input type="text" id="userInput"/>

<h3 id="head"></h3>
<ul>
<li id="blog"></li>
<li id="pubRepos"></li>
</ul>
</div>

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/rxjs/5.4.2/Rx.min.js"></script>

JavaScript

function getUser(userName){
	return $.ajax({
  	url: 'https://api.github.com/users/'+userName,
    dataType: 'jsonp'
  }).promise();
}

Rx.Observable.fromEvent($('#userInput'), 'keyup')
	.subscribe(e => {
      Rx.Observable.fromPromise(getUser(e.target.value))
      .subscribe(x => {
        $('#head').text(x.data.name);
        $('#blog').text(x.data.blog);
        $('#pubRepos').text(x.data.public_repos);
      });
  });