'NodeJs - One async function forced me to make all my functions async [duplicate]
I'm working on a web application using expressjs and knexjs packages. because knex functions are async or promise-based, I have to make all my functions async too. for example if I have 3 functions:
async function accessDb() {
return await knex.some_query();
}
async function doSomething() {
let db_result = await accessDb();
// do something with db_result;
return some_result;
}
async function doMore() {
let something_result = await doSomething();
//....
return true;
}
How can I stop making all my functions async because of one async function?
Solution 1:[1]
It names is Promise hell/ async&await hell,
You can use Promise.all function, like:
Promise.all([
doSomething(),
doMore()
]).then(() => doMoreThanMore())
another solution is:
function doMore() {
doSomething()
.then((something_result) => {
doMoreMore()
})
//....
return true;
}
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | Yusuf ?lker O?uz |
