Я нахожусь в процессе создания небольшой библиотеки, которая в значительной степени зависит от асинхронности, и я пытаюсь поддерживать стиль обратного вызова NodeJ, Promises и async / await с минимальным дублированием функционального кода.
Итак,в качестве примера возьмем следующее (не имеет значения, что он делает)
class Someclass{
constructor(){}
asyncMethod(someData, cb){
var commonVar = ''
if (cb) { // ******* Callback Requested
doSomething()
var result=usingCallbacks()
if (!result) cb('Error')
cb(null, result)
} else{ // ******** we should use a promise
return new Promise((resolve,reject) => {
doSomething()
var result=usingPromises()
if (!result) reject(err)
resolve(result)
})
}
}
}
Так что я застрял на том, как построить здесь асинхронную / awit-часть.Есть идеи?