2013-03-25 5 views
5

Ho un file package.json che assomiglia:Utilizzando require() in un remoto ospitato applicazione node-webkit

{ 
    "name": "title", 
    "description": "description", 
    "version": "0.1", 
    "main": "https://path-to-application/", 
    "window": { 
     "show": true, 
     "toolbar": false, 
     "frame": true, 
     "position": "center", 
     "width": 800, 
     "height": 600, 
     "min_width": 220, 
     "min_height": 220 
    } 
} 

Ma quando tento di eseguire il codice:

var GUI = null; 
var win = null; 
try { GUI = require('nw.gui'); win = GUI.Window.get(); } catch (ex) { } 
win.toggleFullscreen(); 

Non succede nulla, aggiungendo avvisi per GUI e win show sono entrambi impostati su null. Quando eseguo lo stesso codice da un file index.html all'interno dello stesso file .zip di package.json, funziona come previsto. Sembra che non riesca con la chiamata iniziale a require().

C'è un modo per farlo funzionare in un'applicazione ospitata in remoto?

+1

Hai provato a rilevare eventuali eccezioni e vedere cosa dice? La ragione per cui non erano stati impostati nel blocco try probabilmente ha generato un'eccezione. – orb

+0

L'errore è: "ReferenceError: require non è definito". – CoryG

risposta

6

Sono stato in grado di risolvere questo problema aggiungendo il campo node-remote al file package.json se qualcun altro si è imbattuto in questo problema.

+0

è fantastico ... sai se è possibile ospitare anche i node_modules da remoto. Posso farlo funzionare solo se i miei node_modules sono all'interno della cartella dell'app che uso per creare il nodo-webkit exe. Sarebbe fantastico se potessimo estrarli anche da remoto in modo da poter aggiornare le dipendenze da remoto con il rilascio di una nuova versione dell'app. – stukennedy

+0

@CoryG Puoi mostrare il tuo file package.json? Il wiki di node-webkit non rende immediatamente ovvie le istruzioni del nodo remoto. –

+0

Puoi dare un esempio delle regole che hai usato? Non riesco a farlo funzionare. – ricovox