2013-05-05 53 views
1

這是我的代碼:如何backgrid與骨幹網整合佈局管理

beforeRender : function() { 
    var columns=[{name:'hq_name',label:'Headquarter Name',cell:'string'},{name:'description',label:'Description',cell:'string'}]; 
    var grid=new Backgrid.Grid({ 
     columns:columns, 
     collection:this.collection 
    }); 
    this.insertView(grid.render().el); 
} 

Uncaught TypeError: Cannot read property 'manager' of undefined

回答

0

不是引發的

this.insertView(grid.render().el); 

此錯誤試試這個:

this.insertView(grid); 
1

我在將BackGrid與Backbone Boilerplate +(Lodash + backbone.layoutmanager)集成的相同問題中運行。

作者的上述建議不適用於我。

您必須確定Backbone.LayoutManager.configure中的manage屬性設置爲false。否則,BakGrid的內部渲染方法(body,header等)將無法按預期工作。

Backbone.LayoutManager.configure({ 
    manage: false 
}); 

帶有下劃線兼容性的Lodash v 1.2似乎在第一次試驗中工作正常。

順便說一句:謝謝你Y.H黃你的好作品。

0

而不是 this.insertView(grid.render()。el); 試試這個: this。$ el.append(grid.render()。el);