我不是最有经验的 Javascript 程序员,最近开始了一个网络应用程序项目,它比我习惯的东西范围更大(主要用于做公司网站等)
运行应用程序的 JS 作为单个文件变得难以管理,因此我决定将其拆分为更小的函数并使用 gruntJS 为我将所有内容连接在一起会更好。
我一直在主应用程序上使用模块化设计模式,但现在我有点困惑,因为我已经把它分成了更小的块。看下图:
var myProject = (function() {
var init = function() {
effects.widgetColor('lighter'); // this doesn't work
login(); // this doesn't work
myProject.effects.widgetColor('lighter'); // this does work
myProject.login(); // this does work
}
return {
init: init
};
})();
myProject.effects = (function() {
// effects
})();
myProject.login = (function() {
// login stuff
})();
$(document).ready(function() {
init(); // this doesn't work
myProject.init() // this does work
});
我的问题是如何最好地将这些功能添加到“myProject”对象中?我确信这是一个我还没有学过的简单的基本概念。
谢谢 :)