我使用的是RequireJS和Angular,但他們並沒有在我的設置中一起工作。當jQuery版本爲1.7.2時,情況正常。然而,我想使用jQuery 1.8.1和jQuery UI和角度應用程序甚至無法用此來初始化我的主模塊。jQuery和AngularJS不能一起工作
這裏的問題是:
區分大小寫變量:jQuery的和jQuery。在jquery 1.8.1源代碼中,最後他們定義了window.jQuery。在早期版本1.7.2中定義了window.jquery。
因爲我想在我的應用程序中使用jQuery UI包含文件jquery-ui-1.8.23.custom.min.js。包含它後,我得到了「jQuery」未定義的錯誤。
所以,我決定升級我的jQuery版本並下載了1.8.1版本。接近jQuery源代碼的末尾,我可以看到這個版本定義了window.jQuery(jQuery UI所需的正確大小寫)。
我用James Burke github項目的最新版本更新了我的require-jquery JS,並用jquery 1.8.1對其進行了更新。
但包括更新的jQuery/RequireJS項目,angularjs已停止工作。
我得到這個錯誤在Chrome控制檯:
如果我恢復到1.7.2角的作品。或者,如果我編輯jQuery文件來定義window.jquery而不是window.jQuery(請注意大小寫),它再次起作用。但這意味着jQuery UI不會。
你試過包括jQuery,然後說,「window.jquery = jQuery;」?然後,jquery和jQuery都將被定義(別名爲相同的東西),並且兩個包都應該很開心。 –
是的,我試過了。對於這兩個版本,AngularJS都抱怨沒有找到模塊名稱'manager'。我認爲我的問題更多的是與RequireJS相比,而不是AngularJS。我的項目使用了RequireJS,所以我想知道是否有人試圖在RequireJS項目中包含jQuery UI和Angular。 –