之間更新的數據這是我第一次考慮requirejs。我一直在通過移植我的一箇舊項目來做到這一點。到目前爲止,它進展順利。到現在。RequireJS:如何通過模塊
我一直在做的是保持一個站點設置對象包括系統設置,如窗口高度,窗口寬度,文件的高度,scrollTop的等在那裏,我更新了調整大小的值,然後滾動事件。這些都是我可以訪問的全局變量。
例如(使用jQuery)
var mySettingsObject = {};
mySettingsObject.Init = function() {
this.winWidth = $(window).width();
$(window).resize(function(e) {
mySettingsObject.winWidth = $(window).width();
});
};
$(document).ready(function) {
mySettingsObject.Init();
});
現在我可以從任何功能隨時調用mySettingsObject.winWidth訪問該變量,它將始終是最新的。
什麼我想了解的是我怎麼能使用requirejs模塊依賴具有相同的行爲呢?
這是我的兩個模塊爲例
define('system', function() {
// Window settings
var winWidth = $(window).width();
$(window).resize(function(e) {
winWidth = $(window).width();
}
return {
winWidth: winWidth
};
\t \t
});
// (is run on dom load)
define('myModule', ['system'], function(system) {
$(window).on('resize', function() {
if (system.winHeight === xyz) {
// do something
}
});
});
的system.winHeight按預期工作,給我窗口的高度,因爲它是在DOM負荷。現在,如果我調整瀏覽器,我怎麼能有Mymodule中,即內部變量更新本身我怎樣才能使這兩個模塊進行通信。
你開始你的問題談論寬度和結束談論身高。你打算談論整個寬度,不是嗎? – Louis 2015-02-11 17:26:16
是的,我做了:)但是,寬度,高度,在這種情況下,它真的是一樣的。 – Patrik 2015-02-11 19:37:38