Jak dynamicznie zmienić rozmiar sieci interfejsu użytkownika zgodnie z liczbą rekordów?


Po pierwsze, nie chcę pionowego paska przewijania
Robię coś takiego
var height = (rowLength*30)+100;
angular.element(document.getElementById('grid1')).css('height', height + 'px');
dzięki temu mogę zmienić rozmiar siatki, ale zawsze pokazuje ona liczbę rekordów widocznych w rzutni.
Na przykład. Mam 40 rekordów pobranych z pozostałej strony i odpowiednio zmieniłem rozmiar siatki, ale wyświetli tylko 25 rekordów, a pozostała strona będzie pusta.
Czy jest jakiś udział w tym biznesie?
Podziękować!
Zaproszony:
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Możesz użyć ich dyrektywy
auto-resize
, jak pokazano na

ich stronę samouczka
http://ui-grid.info/docs/%23%2 ... esize
.
Innym prostym sposobem jest użycie atrybutu stylu automatycznej zmiany rozmiaru
<div id="grid2"
ui-grid="vm.gridOptions"
ui-grid-auto-resize
style="height: {{vm.desiredTableHeight + 'px'}}; width: {{vm.desiredTableWidth + 'px'}};">

Gdy
vm.desiredTableHeight
lub
vm.desiredTableWidth
ulegną zmianie, angular to zauważy i zostanie wywołana dyrektywa.
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Faktyczną odpowiedzią na moje pytanie była właściwość
virtualizationthreshold
, którą należy ustawić na liczbę linii, domyślnie jest to około 20, więc linie wydawały się puste, ponieważ siatka nigdy nie była w pełni renderowana

Aby odpowiedzieć na pytania, Zaloguj się lub Zarejestruj się