Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Macos 在Mac上运行时分配失败_Macos_Node.js_Jsdom_Contextify - Fatal编程技术网

Macos 在Mac上运行时分配失败

Macos 在Mac上运行时分配失败,macos,node.js,jsdom,contextify,Macos,Node.js,Jsdom,Contextify,我有一个node.js项目,在Pc和Linux上运行良好,但是在Mac(Mountain Lion)上运行时,jQuery模块无法工作。将忽略对窗口对象属性的任何指定 就是 if(jQuery){ window.jQuery = jQuery; if(!window.jQuery){ throw "assignment didn't have any effect"; } } 将引发异常。如有任何解决方案,我们将不胜感激 对象的原型是未定义的,我希望这两件事是相

我有一个node.js项目,在Pc和Linux上运行良好,但是在Mac(Mountain Lion)上运行时,jQuery模块无法工作。将忽略对窗口对象属性的任何指定

就是

if(jQuery){
   window.jQuery = jQuery;
   if(!window.jQuery){
       throw "assignment didn't have any effect";
   }
}
将引发异常。如有任何解决方案,我们将不胜感激

对象的原型是
未定义的
,我希望这两件事是相关的。window对象是使用jsdom.createWindow()创建的(它反过来返回doc.parentWindow)

这似乎是由下面这条线引起的

vm.runInContext('this', context);

返回实际对象(没有原型)。

问题是安装jsdom模块时无法编译contextify的副作用。这可以通过安装make来修复。问题中失败的conde是错误处理,它试图处理contextify的安装问题

在make上安装make可以通过安装开发工具(针对OSX的XCode的命令行工具)来完成。安装make后,请重新安装contextify