egi*_*gis 0 javascript backbone.js
我正在学习backbone.js并且已经有问题了.
我正在用LABjs加载我的脚本,如下所示:
$LAB.setOptions({BasePath : path})
.script('libs/underscore.js?v=1.3.3')
.script('libs/backbone.js?v=0.9.2')
.script('libs/jquery.js?v=1.7')
.script('libs/bootstrap.min.js?v=2.0.2').wait()
.script('test.js');
Run Code Online (Sandbox Code Playgroud)
在我的test.js中我有这个(来自backbonetutorials.com):
(function($){
SearchView = Backbone.View.extend({
initialize: function(){
alert("Alerts suck.");
}
});
var search_view = new SearchView;
})(jQuery);
Run Code Online (Sandbox Code Playgroud)
如你所见,这应该给我一个警告,文字"Alerst suck.".相反,它会在我的firebug控制台上抛出一个错误 - i is not a function(34 line of backbone.js).
如果我尝试初始化这样的视图,var search_view = new SearchView({el: $('#some_dom_element')});它会给我另一个错误 - invalid 'instanceof' operand i(34行的backbone.js文件).
jQuery对象$已定义.我可以毫无问题地初始化Backbone.js模型.只是查看抛出那些错误.我错过了什么?
似乎加载脚本的顺序很重要.我现在首先加载了jQuery,它开始工作了.我还用非缩小版的backbone.js测试了它,错误更加冗长$ is not a function.所以再次 - 在backbone.js修复它之前加载jQuery.
编辑:当我console.log($)在视图初始化之前做的时候在backbone.js之后加载jQuery时,它显示了tha $是一个函数.为什么backbone.js无法工作呢?有人可以解释一下吗?
| 归档时间: |
|
| 查看次数: |
1605 次 |
| 最近记录: |