2013-03-25 79 views
5

我有一个的package.json文件,看起来需要(),如:使用在远程托管节点的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 
    } 
} 

但是当我尝试运行代码:

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

没有任何事情发生,为图形用户界面和赢取显示添加警报,它们都设置为空。当我使用与package.json相同的.zip中的index.html文件运行相同的代码时,它按预期工作。初次调用require()似乎失败了。

有没有办法让这个工作在远程托管的应用程序?

+1

您是否试图捕捉任何异常并查看它说了什么?他们没有在try块中设置的原因可能会引发异常。 – orb 2013-03-25 04:39:34

+0

错误是:“ReferenceError:require未定义”。 – CoryG 2013-03-25 05:42:49

回答

6

如果有其他人遇到此问题,我可以通过将node-remote字段添加到package.json文件来解决以下问题。

+0

这太棒了......你知道是否可以远程托管node_modules。我只能让它工作,如果我的node_modules位于我用来创建node-webkit exe的应用程序文件夹中。如果我们可以远程调用这些应用程序,那将会非常了不起,所以我可以远程更新依赖关系,而不必再发布新版本的应用程序。 – stukennedy 2014-06-20 16:26:05

+0

@CoryG你可以显示你的package.json文件吗? node-webkit wiki不会立即显示节点远程指令。 – 2014-09-19 13:43:48

+0

你能举一个你使用的规则的例子吗?我似乎无法得到它的工作。 – ricovox 2015-02-24 21:01:18