0

我在我的项目中使用剑道反应。在 datagrid 组件中,具有“k-grid-table”类宽度的表为 0!问题出在哪里 ?

如下

4

1 回答 1

1

仅当每个列都有宽度时,宽度才由所有列宽度的总和(以像素为单位)计算。因此,您要么有零列,要么所有列的宽度都为 0。

这是实际的代码:

    Grid.prototype.resetTableWidth = function () {
    var totalWidth = 0;
    if (!this.columnResize.colGroupMain) {
        return;
    }
    var colElements = this.columnResize.colGroupMain.children;
    for (var i = 0; i < colElements.length; i++) {
        var width = colElements[i].width;
        if (!width) {
            return;
        }
        totalWidth += parseFloat(width.toString());
    }
    totalWidth = Math.round(totalWidth);
    if (this._header) {
        this._header.setWidth(totalWidth);
    }
    if (this.vs.table) {
        this.vs.table.style.width = totalWidth + 'px';
    }
};

来自https://unpkg.com/@progress/kendo-react-grid@1.2.0-dev.201807111121/dist/es/Grid.js(当前最新的开发版本)

于 2018-07-16T05:57:16.427 回答