/ / Импортиране на json в магистралния изглед - javascript, json, backbone.js

Импортиране на json в гръбнака View - javascript, json, backbone.js

Нов съм за гръбнака и все още се свиквам с потока от всичко. data.json файл в моя модел и използвай го от моя гледна точка ...

data.json

[
{ id: "001", student: "Mark" },
{ id: "002", student: "Sally" },
{ id: "003", student: "Harold" }
]

assets / data.js (модел)

var DataModel = Backbone.Model.extend({
url: "assets/data.json",

initialize: function() {
// this logs properly
console.log("this initializes");
}
})

data_view.js

var Students = Backbone.View.extend({
initialize: function() {
var data = new DataModel();
data.fetch();

// doesn"t return json
console.log(data);
}
})

регистрите на данни като ...

v __proto__: Backbone.Model
> constructor: ()
> initialize: ()
url: "assets/data.json"
> __proto__: Object

Всичките ми внос са правилни, но защо не мога да зареждам JSON в моя изглед? Какво правя погрешно? (Опитах се да направя колекция, но това имаше същия ефект; не се намери json)

Отговори:

2 за отговор № 1

Защото fetch използва jQuery Ajax, така че е асинхронен. Ако записвате данни веднага след извикване на извличане, данните не се изтеглят от сървъра.

data.fetch({
success: function(model, response, options) {
console.log(model);
},
error: function() {

}
});

Референция за връзка: http://backbonejs.org/#Model-fetch


0 за отговор № 2

С използването на JQuery:

        var DataModel = new DataModel();
$.when(DataModel.fetch()).then(function() {
var students = new Students({model: DataModel });
});