【问题标题】:Rendering Backgrid when using Layoutmanager使用 Layoutmanager 时渲染 Backgrid
【发布时间】:2013-08-23 12:56:27
【问题描述】:
我正在使用 Layoutmanager 并将 manage 设置为 true
Backbone.Layout.configure({
manage: true
这会打乱 Backgrid 的渲染。
当manage 设置为false 时,表格会正确呈现,但如果我将manage 设置为true,则表格不会完全呈现(没有表头或表体),而只有@987654328 @。
【问题讨论】:
标签:
backbone.js
backgrid
backbone-layout-manager
【解决方案1】:
我知道这是一个老问题,但这是因为 LayoutManager 和 Backgrid 都使用“渲染”功能。将 manage 设置为 true 时,LayoutManager 会使用自己的覆盖 Backgrid 的渲染函数。
我解决这个问题的方法是创建一个扩展 Backgrid 的新视图并直接调用它的渲染函数。
var myGrid = Backgrid.Grid.extend({
manage:true,
initialize: function(options) {
Backgrid.Grid.prototype.initialize.call(this,options));
this.renderGrid();
},
renderGrid: function() {
Backgrid.Grid.prototype.render.call(this);
return this;
}
});