在Mac上运行时,分配失败

时间:2012-08-14 05:37:20

标签: macos node.js jsdom contextify

我有一个在Pc和Linux上运行良好的node.js项目,但是当在Mac(Mountain Lion)上运行时,jQuery模块不起作用。对窗口对象的属性的任何赋值都将被忽略。

那是

if(jQuery){
   window.jQuery = jQuery;
   if(!window.jQuery){
       throw "assignment didn't have any effect";
   }
}

会抛出异常。任何解决它的想法将不胜感激

对象的原型是undefined我希望这两件事情是相关的。窗口对象是使用jsdom.createWindow()创建的(后者又返回doc.parentWindow)

它似乎是由下面的行

引起的
vm.runInContext('this', context);

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

1 个答案:

答案 0 :(得分:0)

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

在make上安装make可以安装开发工具(XCode for OSX的命令行工具)。安装make后再重新安装contextify