我是backbone
的新手,在我目前的项目中我们使用的是Backbone
和Requirejs
。 有4个选项卡说A,B,C,D。在标签一个我保存数据库和标签d数据的一些数据是从标签省下应该displayed.So,我打电话保存在标签手术后的标签d的渲染方法A已完成。如何刷新其中一个视图中的其他视图的ui,它们都出现在骨干中的不同标签中?
第一次加载屏幕时,所有标签都会正确加载正确的数据。 但是,当我从标签一个保存数据,并调用渲染标签的方法d它不更新ui.Problem是,render()
获取调用没有错误,但在用户界面选项卡d没有得到刷新。
以下是我的虚拟代码标签答:
define(['jquery','backbone','underscore','views_jira/tabDView'],
function($,Backbone,_,TabDView)
{
var TabAView = Backbone.View.extend({
tabDView:new TabDView(),
render:function(){
this.model.save(objectToSave,{
success: _.bind(this.saveSuccessCallback, this),
error: _.bind(this.saveErrorCallback, this)
});
}
});
saveSuccessCallback: function (model, response) {
tabDView.render()
},
saveErrorCallback:function (model, response) {
}
}
);
以下为标签d代码:
define(['jquery','backbone','underscore','collections'],
function($,Backbone,_,DataCollection) {
var TabDView = Backbone.View.extend({
el:'#myViewDivinHtmlBody'
dataCollection:new DataCollection();
render:function(){
this.dataCollection.fetch({
success: _.bind(this.handleOpendTicketsSuccessCallback, this),
error: _.bind(this.handleOpendTicketsErrorCallback, this)
});
},
handleOpendTicketsSuccessCallback:function(model, response, fetchOptions){
this.$el.find('.mydiv').append(response);
},
handleOpendTicketsErrorCallback:function(model, response, fetchOptions){
console.log("Error in fetching the tickets");
}
});
return TabDView;
}
)
谁能告诉我在哪里,我错了。 注意:没有控制台错误。
我没有看到,增加了'TabDView'元素DOM –