我一直在使用ES6 Promise。
通常,Promise的构造和使用方式如下所示:
new Promise(function(resolve, reject){
if (someCondition){
resolve();
} else {
reject();
}
});
但是我一直在做以下类似的事情,为了灵活性而将解决方案转移到外部。
var outsideResolve;
var outsideReject;
new Promise(function(resolve, reject) {
outsideResolve = resolve;
outsideReject = reject;
});
之后
onClick = function(){
outsideResolve();
}
这个方法可以正常工作,但有没有更简单的方法?如果没有,这是一个好的做法吗?
Promise
传递的回调必须同步执行,以允许“导出”这两个函数。 - Felix Kling