使用require.js共享/使用backbone.js中的gobal变量



我有一个变量,比如var树。我想在两个文件中使用这个变量,比如a.js和b.js。这两个文件都改变了变量树的状态。我想访问其他更改状态文件中的那个变量。这怎么可能??

正如评论中链接的问题所述,有更优雅的方法可以做到这一点,但最简单的方法是定义一个带有对象文字的RequireJS模块来保持共享状态:

define('sharedstuff', [], {tree: "original value"});

然后从其他模块你可以要求它:

require(['sharedstuff'], function(sharedstuff) {
    sharedstuff.tree = "new value";
};

如果您需要另一个模块,RequireJS不会重新加载新的副本,而是会给您已经加载的版本,并填充您的共享值:

require(['sharedstuff'], function(sharedstuff) {
    console.log(sharedstuff.tree) // should be "new value"
};

最新更新