backbone.js - 使用 requireJS 使 Backbone 模型和集合在全局范围内可用

标签 backbone.js requirejs backbone-views backbone-routing

我是网络应用程序开发的新手。我有一个名为 LoginModel 的 Backbone 模型。我想为它创建一个对象,并使它可以从任何将动态加载的主干 View 全局访问。这是我的模型..

define(['underscore', 'backbone'], function(_, Backbone) {
    LoginModel = Backbone.Model.extend({
        initialize: function(){ },
        defaults:{
            userName: 'undefined',
            userID: 'undefined'
        },
        urlRoot: 'https://xxxx.xx.xxxxxx',
        parse: function(response, options){
            return{
                userName: response.userName,
                userId:response.userId
            };
        }
    });
});

最佳答案

您可以将新创建​​的对象固定到您正在使用的现有全局对象,例如 Backbone :

Backbone.Model.definitions = {
    loginModel : Backbone.Model.extend({...})
}

并像这样使用它:

new View({model : Backbone.Model.definitions.loignModel});

这可能不是最短的方式,但比用不同的变量污染全局命名空间要干净。

关于backbone.js - 使用 requireJS 使 Backbone 模型和集合在全局范围内可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16932177/

相关文章:

javascript - 在backbone.js中,如何捕获除普通 "change"事件之外的所有事件?

javascript - 如何将 2 个处理程序附加到同一个事件?

javascript - Marionette.js 行为可以触发事件吗?

php - 使用 Backbone.js 与服务器通信

javascript - 我如何结合谷歌地图和基于主干 View 的信息框

javascript - 在 Marionette 中使用变量作为区域名称

javascript - 如何通过 RequireJS/AMD 将我的 TypeScript 代码公开给我的 JavaScript 代码?

javascript - tsc tsconfig.json 设置编译为与 requirejs 兼容的 JS 类?

javascript - 在 Javascript AND 中,为什么定义一个没有名字的模块是有用的?

javascript - 保存后主干网未使用 save() 发出 put 请求