2012-08-14 47 views
0

我有一個node.js項目可以在PC和Linux上正常運行,但是在Mac(Mountain Lion)上運行時,jQuery模塊不起作用。對窗口對象屬性的任何賦值都將被忽略。當在Mac上運行時,賦值失敗

也就是說

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

問題是無法在安裝jsdom模塊時編譯contextify的副作用。這可以通過安裝make來修復。問題中失敗的conde是嘗試處理symxtify安裝問題的錯誤處理。

通過安裝開發工具(用於XCode for OSX的命令行工具)可以完成make make。安裝完成後再重新安裝contextify

相關問題