RSVP Promises

JS library for Spec A

by Fernando De Leon

HTML

<script src="http://rsvpjs-builds.s3.amazonaws.com/rsvp-latest.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/rsvp/3.3.3/rsvp.min.js"></script>
<button id="press">
Press and watch console
</button>
<button id="press2">
Press with chaining promises
</button>

<button id='press3'>
Asyn Await
</button>

JavaScript

function func1() {
  var promise = new RSVP.Promise(function(resolve, reject) {
    setTimeout(function() {
      var d = new Date();
      console.log("about to resolve! " + d.getTime());
      var message = {
        txt: "Password"
      };
      reject("throwing error!");
    }, 1000);
  });
  return promise;
}

function func2(message) {
  var promise = new RSVP.Promise(function(resolve, reject) {
    var d = new Date();
    console.log("about to resolve func2 :" + d.getTime());
    // message.name = "Nando";
    reject("error message");
  });
  return promise;
}

async function func3() {
 return "100000";

}

$("#press").on("click", function(ev) {

  func1().then(function(message) {
    console.log("the message is: " + message.txt);
  });
});

$("#press2").on("click", function(ev) {
  p = func1().then(function(message) {
    console.log("the message is--> " + message.txt);
    console.log("lets send to next method-->");
  }).catch(function(ex) {
    console.log("An error was thrown!" + ex);
  });
  
  console.log(p);
  
});

$("#press3").click(() => {
  func3().then(result => {
    console.log(result);
  })
})