gpt4 book ai didi

javascript - Backbone 应用组织

转载 作者:行者123 更新时间:2023-11-28 10:06:28 26 4
gpt4 key购买 nike

我按照本页 http://weblog.bocoup.com/organizing-your-backbone-js-application-with-modules 中的描述组织了我的 Backbone 应用程序

对于那些还没有读过文章的人,我将简要解释一下这个想法:我定义了一个变量来保存我的所有模块。

var Application = {
module: function(){
var modules = {};
return function(name){
if (typeof modules[name] == 'undefined')
{
modules[name] = {
Model: {},
Collection: {},
Views: {},
}
}
return modules[name];
};
}()
};

Application.module 是一个按名称返回模块的函数。然后我定义我的应用程序模块如下:

(function(chat){
chat.Model = Backbone.Model.extend({ ... }),
chat.Collection = Backbone.Collection.extend({ ... }),
etc.
})(Application.module('Chat'));

一切似乎都很好 - 所有代码都被分成模块,但是当我尝试从模块的类之一实例化变量时。

$(document).ready(function(){
var foo = new Application.module('Chat').Collection();
});

上面的代码给了我 Backbone 的“未捕获类型错误:无法读取未定义的属性‘绑定(bind)’”错误,我不明白为什么?

最佳答案

我上周也看到了这个错误...你正确包含了 underscore.js 吗?就我而言,我在页面中包含了 underscore.js,但在backbone.js 引用之后。

underscore.js 确实必须先加载,backbone 才能完成它的任务:)

这样做:

<script src="underscore.min.js"></script>
<script src="backbone.min.js"></script>

关于javascript - Backbone 应用组织,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8274009/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com