私はこの非常に基本的なコードを使用して、ローカルのJSONファイルからバックボーンコレクションにいくつかのデータをロードしようとしている:コンソール声明でJSONファイルからBackboneコレクションにデータをロードしますか?
window.Student = Backbone.Model.extend({
});
window.Students = Backbone.Collection.extend({
model: Student,
});
window.AllStudents = new Students();
AllStudents.fetch({ url: "/init.json"});
console.log('AllStudents', AllStudents);
、AllStudents
は空です。しかし、init.json
が確実に読み込まれています。それは次のようになります:
[
{ text: "Amy", grade: 5 },
{ text: "Angeline", grade: 26 },
{ text: "Anna", grade: 55 }
]
私は間違っていますか?
UPDATE:私も.fetch()
呼び出し上記reset
リスナーを追加しようとしたが、それはどちらかの発射いない:
AllStudents.bind("reset", function() {
alert('hello world');
});
AllStudents.fetch({ url: "/init.json"});
んが、警告は表示されません。
UPDATE 2:
$(function(){
window.Student = Backbone.Model.extend({
});
window.Students = Backbone.Collection.extend({
model: Student,
});
window.AllStudents = new Students();
AllStudents.url = "/init.json";
AllStudents.bind('reset', function() {
console.log('hello world');
});
AllStudents.fetch();
AllStudents.fetch({ url: "/init.json", success: function() {
console.log(AllStudents);
}});
AllStudents.fetch({ url: "/init.json" }).complete(function() {
console.log(AllStudents);
});
});
つだけのコンソール文がさえ三fetch()
呼び出しで、表示され、それは空のオブジェクトです:(フルでここに再現)このスクリプトをしようとしています。
私は今、絶対に困惑しています。私は間違って何をしていますか?
JSONファイルはapplication/jsonとして提供されているので、それは何の関係もありません。
いい質問です。 JSON –