绝对的初学者在这里。我想在页面加载后立即将数据加载到模型中。 在执行任何其他操作之前。目前我有这段代码。
// Model code
var Portfolio = Spine.Model.sub({});
Portfolio.configure("Portfolio")
Portfolio.extend({
populate: function(values){
for(var i in values[0]){
// add attributes to Model
this.attributes.push(i);
}
for(var j = 0; j < values.length; j++ ){
var tmpInst = this.create(values[j]);
tmpInst.save();
}
}
});
// app controller code
$(function(){
var App =Spine.Controller.sub({
init: function(){
jQuery.getJSON("../xml/data.json",
function(result){
Portfolio.populate(result['content']);
}
).complete(function(result) {
// do other stuff
});
}
})
var app = new App();
});
因此,当页面加载完成后,将调用控制器init
函数,该函数将检索json数据并将其传递给模型,模型将对其进行解析并创建单个实例。
我这样做错了吗?我在文档中看到了Fetch函数,但没有示例如何工作。
答案 0 :(得分:0)
您可能希望使用Spine的框架来执行此操作:
Portfolio.extend(Spine.Model.Ajax);