У меня есть код ниже, чтобы получить result
от func1
, используя callback1
. Но func1
использует func2
с callback2
и затем зависит от этого второго обратного вызова либо возвращает result
, либо используя func3
с callback3
, чтобы получить result
. Не знаете, где поставить другой обратный вызов, чтобы получить один result
.упрощение вложенных обратных вызовов
module1.func1(arg1, function (callback1) {
module1.func2(arg2, function (callback2) {
if (result2) result = result2;
else
module2.func3 (arg3, function (callback3) {
result = result3;
})
})
});
Если добавить еще один обратный вызов func3
он будет работать только в случае, если я не получаю результат от func2
немедленно. Может быть, это все, что мне нужно, картина выглядит слишком сложным для меня
module.exports = function (callback) {
module1.func1(arg1, function (callback1) {
module1.func2(arg2, function (callback2) {
if (result2) result = result2;
else
module2.func3 (arg3, function (callback3) {
result = result3;
callback(result) //???
})
})
});
};