多个datatree子字段

时间:2018-11-23 15:49:53

标签: tabulator

如何从制表符的两个子字段中创建两个数据树?

我尝试过此操作,但是需要Column2来制作数据树。

var table = new Tabulator("#example-table", {
data: table,
dataTree:true,
dataTreeChildField:"Column1",
dataTreeChildField:"Column2"
})

1 个答案:

答案 0 :(得分:0)

这不是有效的JavaScript对象,当您使用相同的键向对象添加两个属性时,第二个属性将覆盖第一个属性。

不可能将两个字段分配为保留子项,但是您可以在表中创建一个额外的隐藏列,并带有一个增幅器,该增幅器将其他两列的子项填充到其中:

//child data mutator
var childDataMerge = function(value, data, type, params, component){
    if(Array.isArray(data.Column1) && Array.isArray(data.Column2)){
        return data.Column1.concat(data.Column2);
    }else{
        return [];
    }
}

//define table
var table = new Tabulator("#example-table", {
    data: table,
    dataTree:true,
    dataTreeChildField:"_children",
    columns:[
        //your normal columns go here

        //data mutation row
        {field:"_children", visible:false, mutatorData:childDataMerge}
    ]
});