Michael_K: Callback in Promise umschreiben

Beitrag lesen

Hallo,

ich habe mich in den letzten Tagen in die Funktionsweisen von Promise eingelesen. Finde ich sehr spannend und in meiner Arbeit nützlich. Aber irgendwie habe ich noch nicht ganz den Trick raus, wie ich meine bestehenden Funktionen mit callback in ein Promise umschreibe. Bzw. möchte ich erst einmal einen Wrapper um meine bestehenden Funktionen. Ich hatte gehoffts, dass es relative einfach ist, aber irgendetwas klappt da nicht.

Meine bestehende asynchrone workerFunktion mit callback sehen vereinfacht so aus und nachfolgend mein Versuch, diese n einen Promise umzuschrieben. aber die promiseWrapper function funktioniert nicht.

var readyCB = function(result){
// arbeite mit dem callback
};

var errorCB = function(error){
//
};

function workerFunction(option, values, readyCB, errorCB){

/* hier wird asynchron mi einem webworker berechnet, beispiel vereinfacht */

    function resultReceiver(msg){
        if (readyCB) readCB(msg.data)
    }


    function errorReceiver(error){
        if (errorCB) errorCB(error)
    }

    var worker = new Worker('worker.js');
    worker.onmessage = resultReceiver;
    worker.onerror = errorReceiver;
    worker.postMessage(values);

}

// mein Versuche eines Wrappers

function promiseWrapper(){
    return new Promise(function(resolve, reject) {
        workerFunction(option, values, resolve, reject);
    });
};

Kann mir jemand sagen, wo mein Denkfehler bei dem Wrapper ist?

Gruss