Resolve Javascript Promise außerhalb des Funktionsumfangs

Ich habe ES6 Promise verwendet.

ormalerweise wird ein Versprechen so konstruiert und verwendet

new Promise(function(resolve, reject){
    if (someCondition){
        resolve();
    } else {
        reject();
    } 
});

Aber ich habe etwas unternommen, um die Entschlossenheit aus Gründen der Flexibilität nach außen zu tragen.

var outsideResolve;
var outsideReject;
new Promise(function(resolve, reject) { 
    outsideResolve = resolve; 
    outsideReject = reject; 
});

Und späte

onClick = function(){
    outsideResolve();
}

Dies funktioniert gut, aber gibt es einen einfacheren Weg, dies zu tun? Wenn nicht, ist dies eine gute Praxis?

Antworten auf die Frage(10)

Ihre Antwort auf die Frage