Backbone / RequireJS模型数据存储

时间:2012-02-02 20:54:50

标签: backbone.js requirejs

我正在使用Backbone / RequireJS为我的应用程序提供模块化和结构。我有一件事要反对,并非常感谢这方面的一些建议。

当用户访问该页面时,首先发生的是一些填充了几个模型的JSON。我希望这些模型可以在应用程序的任何地方使用,因为它们包含程序的数据和支持。是否允许使用window.modelName,或者您是否建议采用其他/更好的方法来实现此目标?

1 个答案:

答案 0 :(得分:1)

使用您建议的解决方案首先违背了使用AMD的全部目的。 定义一个模块(让我们称之为全局变量):

define(function (require) {
  var globals = function () {
    return {};
  };
  return globals();
});

现在,当你初始化时,你可以为它添加值:

globals = require('globals');
globals.mymodel = new MyModel();
mymodel.fetch();

稍后,您可以从任何其他模块访问您的全局模块:

globals = require('globals');
console.log(globals.mymodel.get('myattr');