在當前的項目中,我需要使用RequireJS以及動態包含模塊與靜態包含的JavaScripts一樣。Requirejs靜態包含腳本回調沒有得到執行
每個頁面都需要包含靜態腳本,並在開發過程結束時進行concardinated。這些例如jQuery jQueryUi和一些更多的腳本,如自動建議腳本。
動態部分僅用於某些頁面,如配置程序,其中需要一個額外的腳本,以便在每個頁面上加載大量腳本。這就是爲什麼此腳本作爲模塊加載到需要的頁面上的原因。
雖然jQuery和jQueryUI的玩好的,可作爲AMD模塊由於該如何工廠方法被執行:
(function(t){
"function"==typeof define&&define.amd?define('jquery-ui',["jquery"],t):t(jQuery)
})(function(t){...});
這不是自動提示部分屬實。雖然我添加了完全相同的功能模式:
(function(t){
"function"==typeof define&&define.amd?define('suggest',['jquery','jquery-ui'],t):t(jQuery)
})(function(t){
console.log('yeah');
});
工廠內部的yeah部分沒有得到執行。
我在想什麼?還有什麼需要讓它工作?
我應該強調的是autosuggest文件也有一個完全定義的塊依賴。 所以它不是一個普通的js文件,而是一個amd兼容的結構化文件,它通過腳本標籤被包含。 如果我沒有完全錯誤,只需要簡單的js文件就可以使用墊片。在這種情況下,我想我不需要將此添加到配置。 –
你可以顯示'autosuggest'文件嗎?如果我能看看模塊定義,我可能會更好地幫助你。 –
用建議文件創建一個要點。如果您需要更多詳細信息,請告訴我。 https://gist.github.com/garbast/9af7782e71507fda37d6bb637de5ca9c –