@codelet/core
Version:
mini core
13 lines (12 loc) • 461 B
JavaScript
export function promisify(fn) {
// TODO options 可选类型这里有点问题 以后看有没有解决方法
return function (options, ...args) {
const { success, fail, complete } = (options || {});
if (success || fail || complete) {
return fn(options, ...args);
}
return new Promise((resolve, reject) => {
return fn({ ...options, fail: reject, success: resolve }, ...args);
});
};
}