I've been playing around with a few different ways of chaining a collection of functions and can't seem to find one I particularly like. The following is the last one I settled on but am still not keen on it.
Can someone suggest a cleaner and more concise pattern? I don't want to opt for Async.js or a library.
[
this.connectDatabase.bind(this),
this.connectServer.bind(this),
this.listen.bind(this)
].reduce(
(chain, fn) => {
let p = new Promise(fn);
chain.then(p);
return p;
},
Promise.resolve()
);
Ps. any other tips are more than welcomed.
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…