Javascript 全球';缓存&x27;requireJS AMD应用程序中的变量

Javascript 全球';缓存&x27;requireJS AMD应用程序中的变量,javascript,global-variables,requirejs,Javascript,Global Variables,Requirejs,我的应用程序有一个View()模型,通过对视图路径的简单调用获取HTML、CSS等。由于这些视图和Viewlet中有许多是多次共享或需要的,因此我希望维护一个加载视图的“缓存”对象,如果某个特定视图已加载,则View()的任何新实例都可以检查并读取该对象 在requireJS实现中,有没有关于将此视图“缓存”对象放置在何处的最佳想法?理想情况下,我希望有一个类似Session()的对象包含它,并且我能够从我应用程序中的任何位置引用Session()的单个实例 关于这方面的最佳实践有什么想法吗 非

我的应用程序有一个View()模型,通过对视图路径的简单调用获取HTML、CSS等。由于这些视图和Viewlet中有许多是多次共享或需要的,因此我希望维护一个加载视图的“缓存”对象,如果某个特定视图已加载,则View()的任何新实例都可以检查并读取该对象

在requireJS实现中,有没有关于将此视图“缓存”对象放置在何处的最佳想法?理想情况下,我希望有一个类似Session()的对象包含它,并且我能够从我应用程序中的任何位置引用Session()的单个实例

关于这方面的最佳实践有什么想法吗


非常感谢

我建议您使用单例方法为这种情况创建一个简单的模块。例如,您可以创建如下模块:

define(["mydep","myotherdep"], function(dep1,dep2){
  var Hellovariable = {
       "attr1": ...,
       "attr2": ...,
  ...
       "attrN": ...
  }
  return Hellovariable;
});
使用AMD调用此模块时,此变量及其属性只有一个唯一实例