Как динамически увеличить высоту строки с помощью Ag-Grid?

У меня есть таблица с использованием ag-Grid. Я хочу настроить высоту строки в соответствии с текстом в ячейке. В документации https://www.ag-grid.com/javascript-grid-row-height/index.php он был задан для конкретного столбца. Но в моем случае в любом столбце может быть больше текста. Итак, как настроить высоту строки в соответствии с наибольшим размером текста в любом столбце.

$scope.gridOptions = {
            angularCompileRows: true,
            enableColResize: true,
            enableSorting: true,
            enableFilter: true,
            groupHeaders: true,
            suppressCellSelection: true,
            columnDefs: cols,
            rowData: statusPageObj.rows,
            onGridReady: opmGridReady,
            angularCompileRows: true,
            headerHeight: 45,
            /*rowHeight: 50,*/
            getRowHeight: function(params) {
               return 50;
            }

        };

person Keshav1007    schedule 11.10.2016    source источник
comment
есть комментарии по этому поводу?   -  person Keshav1007    schedule 12.10.2016
comment
Вы можете использовать params.data внутри функции getRowHeight. Это данные, которые вы изначально предоставляете сетке, затем вам просто нужно будет перебрать все свои строки, а затем все свои ячейки, чтобы найти, какая из них имеет наибольшую длину текста.   -  person Jarod Moser    schedule 12.10.2016
comment
@JarodMoser, который вызовет проблемы с производительностью, верно? потому что у меня очень большой json   -  person Keshav1007    schedule 13.10.2016
comment
возможно, но если вы действительно хотите изменить высоту строки в зависимости от того, какая ячейка имеет наибольшее содержимое, тогда я действительно не вижу другого способа, кроме итерации по каждой ячейке, которая у вас есть. Другой вариант - угадать, какая максимальная высота вам нужна, и установить ее с самого начала.   -  person Jarod Moser    schedule 13.10.2016
comment
но я понятия не имею, насколько это повлияет на производительность. Так что вы можете попробовать и посмотреть, насколько больше время загрузки.   -  person Jarod Moser    schedule 13.10.2016
comment
@JarodMoser спасибо дружище .. Я попробую   -  person Keshav1007    schedule 17.10.2016


Ответы (2)


шаг: 1 HTML-код

<button onclick="setrowHeight(50)">50px</button>

step: 2 код js

var rowHeight = 25;

function setrowHeight(height) {
    rowHeight = height;
    gridOptions.api.resetRowHeights();
}

посмотрите это: https://embed.plnkr.co/FEK7wtQfVwUXeYjOh6PK/

person solanki...    schedule 30.04.2017

Вы можете определить высоту строки на основе длины текста.

gridOptions.getRowHeight = function() {
     return 18 * (Math.floor(params.data.myDataField.length / 45) + 1);
}
person Alexander Zbinden    schedule 17.05.2017