Если вам нужно остаться с обратными вызовами (из-за очень старых клиентов JS или чего-либо еще), вы можете предоставить обратный вызов в качестве параметра для x
:
function x(myCallback) {
thirdPartyLibrary.performAsyncTask(myCallback);
}
// other file:
x((resultObject, errorObject) => {
// handle just like before
});
Вы можете даже изменить его на два обратных вызовав зависимости от результата.В итоге будет вызван только один из ваших обратных вызовов:
function x(successCallback, errorCallback) {
thirdPartyLibrary.performAsyncTask((resultObject, errorObject) => {
if (errorObject) return errorCallback(errorObject);
else return successCallback(resultObject);
});
}
// other file:
x(
function handleSuccess(resultObject) {
// handle success
},
function handleError(errorObject) {
// handle error
}
);