在Marionette视图中动态地将列添加到BackGrid

时间:2015-06-05 16:49:16

标签: marionette backbone-views backgrid

所以,我有一个复杂的Marionette应用程序,有几个复合视图。我正在尝试向视图添加动态BackGrid,但似乎无法添加列。我根据这篇文章创建网格并将其添加到视图中:Backgrid integration。但是,每次添加列时,我都需要重新创建Backgrid。这非常浪费!

关于在哪里寻找解决方案的任何想法?

1 个答案:

答案 0 :(得分:1)

我也在寻找这个确切的东西。

我发现网格本身有一个insertColumn和removeColumn方法。 insertColumn函数采用以通常方式格式化的列(所有示例显示的方式) -

{name:<name_here>, label:<label_here>, cell:<cell_type_here>}

添加列就像 -

一样简单
    var Model = Backbone.Model.extend({});
    var Collection = Backbone.Collection.extend({ model: Model });
    var column = {name:"test_name", label:"test_label", cell:"string"};
    var myBackgridObject = new Backgrid.Grid({columns: {}, collection: new Collection([])});

    myBackgridObject.insertColumn(column);

这个牵线木偶文档的链接可能对你有帮助,它会过度操纵网格 -

Backgrid ref - manipulating the grid