如何在模块基础应用程序中隐藏全局命名空间对象

how to hide the global name space object in module base application

本文关键字:隐藏 全局 命名空间 对象 应用程序 模块      更新时间:2023-09-26

如何避免访问命名空间对象。

window.myApp = window.myApp || {};
myApp.Base.Controller = myApp.extend({});
myApp.Base.Model = myApp.extend({});
myApp.Base.View = myApp.extend({});

在这里,我将所有内容附加到myApp,并且myApp将在窗口对象中使用。

如何隐藏从窗口级别访问的 myApp 对象。

正如@Cz łowiek Fin Śpiewak已经建议的那样,您可以将代码包装在IIFE中:

(function(){
  var myApp = {};
  myApp.Base.Controller = myApp.extend({});
  myApp.Base.Model = myApp.extend({});
  myApp.Base.View = myApp.extend({});
})();

我还建议研究需求.js