Created
June 3, 2014 11:58
-
-
Save ChristianUlbrich/4be50f9b6a0aa779c685 to your computer and use it in GitHub Desktop.
Promises gaaaaanz einfach...
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var Q = require('q'); | |
var myPromDemo = {} | |
myPromDemo.func1 = function() { | |
//Deferred holen | |
var deferred = Q.defer(); | |
console.log('Warte 10s'); | |
setTimeout(function(){ | |
console.log('Func1 ist fertig...'); | |
deferred.resolve(true); | |
},10000); | |
return deferred.promise; | |
} | |
myPromDemo.func2 = function() { | |
//Deferred holen | |
var deferred = Q.defer(); | |
console.log('Warte 5s'); | |
setTimeout(function(){ | |
console.log('Func2 ist fertig...'); | |
deferred.resolve(true); | |
},5000); | |
return deferred.promise; | |
} | |
myPromDemo.func3 = function() { | |
//Deferred holen | |
var deferred = Q.defer(); | |
console.log('Warte 30s'); | |
setTimeout(function(){ | |
console.log('Func3 ist fertig...'); | |
deferred.resolve(true); | |
},30000); | |
return deferred.promise; | |
} | |
myPromDemo.demo = function() { | |
//Orchestration von Promises | |
myPromDemo.func1() | |
.then(function(){ | |
console.log('Func1 sollte vorbei sein...'); | |
return myPromDemo.func2(); | |
}) | |
.then(function(){ | |
console.log('Func2 sollte vorbei sein...'); | |
return myPromDemo.func3(); | |
}) | |
.then(function(){ | |
console.log('Func3 sollte vorbei sein...'); | |
}) | |
} | |
module.exports = myPromDemo; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment