我正在构建一个简单的任务应用程序,我可以在其中添加新状态。场景是我已经通过调用can.Model findAll方法使用预定义的对象数组构建状态仪表板。视图存储在' dashboard.ejs'中。当我创建新状态时,我将该数据保存到我的对象数组中,并在保存回调中新的数组数据(包括新数据)出现。现在我的问题是如何使用新返回的数据刷新当前视图
controller=new can.Control({
init:function(element,options)
{
var frag=can.view('dashboard.ejs',this.options)
this.element.html(frag);
},
'someButton click':function(el,ev)
{
new ModelCall(formObject).save(function(response)
{
//response contains added new object
//how to refresh the dashboard.ejs with the new response
});
}
})
我是否需要为此目的再次创建新控制器的对象,否则我错过了什么?
答案 0 :(得分:0)
can.Model .save在完成后返回已保存的模型,因此您只需将新模型推送到列表中:
var self = this'
model.save(function (savedModel) {
self.listOfModels.push(savedModel);
});
在你的情况下,我不清楚你的模型列表在哪里,在this.options中的某个地方?将模型推入列表后,视图应自动刷新。