0

我无法让 Backbone.js 的最基本功能在我的 Web 应用程序上运行。
JQuery、JSON 和 Underscore.js 确实可以工作,但由于某些原因 Backbone.js 不能。
我知道这是一个非常简单的问题,但到目前为止搜索互联网并没有帮助。
我真的很感激任何帮助!

应用详情:
框架:Rails 3.2.6
所有 JS 文件都存储在 app/assets/javascripts 下
存在的 JS 文件:index.js、application.js、backbone.js、json2.js、underscore.js

我如何测试哪些库工作
我已经进行了测试以查看 index.js 文件中的工作原理,该文件包含以下内容:

$(function(){

    //test that this Javascript file is working:
alert('index.js javascript file works');

   //test that jQuery is working:
var jQuery_test = $("#app").attr('id');
alert("jQuery works? (following should be 'app'): " + jQuery_test);

    //test that JSON is working
var json_obj = {"key1":"value1", "key2":"value2", "key3":"value3"};
var json_string = JSON.stringify(json_obj);
alert('JSON library works? (following should be a JSON string): ' + json_string);

//test that Underscore is working
var array1 = ["one", "two", "three"];
var x = _.first(array1);
alert("Underscore library works? (following should be 'one'):  " + x);

   //test that Backbone is working
var ItemView = Backbone.View.extend({
    tagName: 'li'
});
var item = new ItemView();
alert("Backbone library works? (following should be '[Object HTMLLIElement]'): " + item.el);

});

上面的测试通过了除 Backbone 之外的所有测试。也许我正在使用一个糟糕的测试?真的不知道有什么问题。我认为这与我加载文件的方式无关,因为我加载 Backbone 的方式与加载其他库的方式相同,而且它们都可以工作。

谢谢你的帮助!

4

1 回答 1

0

Underscore 是 Backbone 的硬依赖项,应该在 backbone.js 之前加载,就像您可能拥有的任何其他依赖项(jQuery/Zepto)一样。

于 2012-08-16T16:29:59.330 回答