2013-06-04 11 views
6

Utilizzo il nodo-webkit con un modulo esterno denominato edge.Node-Webkit con modulo esterno contenente codice nativo

In base ai moduli del nodo-webkit, i moduli che contengono codice nativo devono essere ricompilati utilizzando nw-gyp in contrasto con node-gyp. Sono stato in grado di ricompilare senza errori e node-webkit sembra importare il modulo OK.

Ecco il mio codice. Il codice che sto cercando di utilizzare:

var edge = require('edge.node'); 

var hello = edge.func(function() {/* 
async (input) => 
{ 
    return ".NET welcomes " + input.ToString(); 
} 
*/}); 

hello('Node.js', function (error, result) { 
if (error) throw error; 
console.log(result); 
}); 

che getta il seguente errore quando eseguito all'interno del nodo-webkit.

Uncaught TypeError: Object [object Object] has no method 'func' 

Se scrivere l'oggetto verso console.log posso vedere:

Object {initializeClrFunc: function} 
initializeClrFunc: function() { [native code] } 
__proto__: Object 

Così il modulo sembra essere caricato. Se eseguo lo stesso codice al di fuori di node-webkit, tutto funziona perfettamente e posso accedere alla funzione func. Questo mi sta facendo impazzire e ogni aiuto sarebbe molto apprezzato.

+1

+1, quello che stai cercando di rendere i suoni molto interessanti. Edge è _estremamente_ tecnologia sperimentale, potresti voler aprire un problema nel loro github. –

+0

Sì, l'ho già fatto. Ho davvero bisogno di provare e questo funziona per un'app di presentazione che sto costruendo. – user1513388

risposta

0

func il metodo è fornito da edge.js, l'involucro attorno al modulo nativo edge.node. Quindi è necessario sostituire require('edge.node') entro il require('edge').

Problemi correlati