Advertisement
kuznets

promise1.js

Apr 21st, 2017
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. 'use strict';
  2. const travel = {};
  3.  
  4. function queryForVisa() {
  5.     console.log('Query processing ...... --------');
  6.     let promise = new Promise(function(resolve, reject) {
  7.         setTimeout(function() {
  8.             let allowed = true;
  9.             if(allowed) {
  10.                 resolve();
  11.             } else {
  12.                 reject('The visa is denied');
  13.             }
  14.         }, 2000);
  15.     });
  16.     return promise;
  17. }
  18.  
  19. function getVisa() {
  20.     console.log('Visa received');
  21.     let visa = {
  22.         country: 'USA'
  23.     }
  24.     travel.visa = visa;
  25.     return Promise.resolve(visa);
  26. }
  27.  
  28. function bookingHotell(visa) {
  29.     console.log(visa);
  30.     console.log('Booking processing');
  31.     let hotell = {
  32.         name: 'Hilton'
  33.     }
  34.     travel.hotell = hotell;
  35.     return new Promise(function(resolve, reject) {
  36.         setTimeout(() => resolve(visa), 2000);
  37.     });
  38. }
  39.  
  40. function buyTickets(visa, hotell) {
  41.     console.log(visa);
  42.     console.log(hotell); //undefined
  43.     console.log('Purchase of tickets');
  44.     let ticket = {
  45.         date: '01.01.2017'
  46.     }
  47.     travel.ticket = ticket;
  48.     return Promise.resolve(ticket);
  49. }
  50.  
  51. queryForVisa()
  52.     .then(getVisa)
  53.     .then(bookingHotell)
  54.     .then(buyTickets)
  55.     .then(function() {
  56.         console.log('Travelling info:');
  57.         console.log(travel);
  58.     })
  59.     .catch(error => console.log(error));
  60.  
  61. console.log('1');
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement