大型Backbone / RequireJS应用程序上的全局资源共享

时间:2012-11-02 00:32:05

标签: javascript backbone.js requirejs

我正在构建我的第一个大型Backbone + Requiere APP,我遇到了一个场景,它可以访问某种“app wide”范围。我在考虑在全局范围内创建一个新的命名空间,如:

window.APP = {
  someProp : someValue,
  ....
}

还有其他选择/良好做法吗?

由于

1 个答案:

答案 0 :(得分:1)

在使用require.js时,我总是尽量避免使用全局范围,最好是避免使用它。

解决方案是创建config.js文件:

#config.js

define([], function() {
    return {
        someProp : someValue
    }
})

然后,当您需要在另一个模块中访问这些值时,您可以执行以下操作:

#foo-module.js

require(['config', 'backbone', 'underscore'], function(config, Backbone, _) {
    console.log(config.someProp)
})