我有一个在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);
返回实际对象(没有原型)。
答案 0 :(得分:0)
问题是在安装jsdom模块时无法编译上下文的副作用。这可以通过安装make来修复。失败的问题中的conde是错误处理,试图处理contextify的安装问题。
在make上安装make可以安装开发工具(XCode for OSX的命令行工具)。安装make后再重新安装contextify