我一直在使用ES6 Promise.
通常,Promise是这样构造和使用的
new Promise(function(resolve, reject){
if (someCondition){
resolve();
} else {
reject();
}
});
Run Code Online (Sandbox Code Playgroud)
但我一直在做类似下面的事情,为了灵活性而采取外面的决心.
var outsideResolve;
var outsideReject;
new Promise(function(resolve, reject) {
outsideResolve = resolve;
outsideReject = reject;
});
Run Code Online (Sandbox Code Playgroud)
然后
onClick = function(){
outsideResolve();
}
Run Code Online (Sandbox Code Playgroud)
这很好,但是有更简单的方法吗?如果没有,这是一个好习惯吗?