web-dev-qa-db-fra.com

ag-grid auto height pour toute la grille

Je ne trouve pas un bon moyen de dimensionner la grille pour qu'elle s'adapte parfaitement à toutes les lignes.

documentation pointe uniquement sur le dimensionnement par% ou px.

Comme je veux le dimensionner en fonction des lignes, j'ai proposé la fonction suivante. On dirait que je réinvente la roue, alors peut-être y a-t-il une meilleure façon?

getHeight(type:EntityType) {
    var c = this.Apis[type] && this.Apis[type].api && this.Apis[type].api.rowModel // get api for current grid
        ? this.Apis[type].api.rowModel.rowsToDisplay.length
        : -1;
    return c > 0
        ? (40+(c*21))+'px' // not perfect but close formula for grid height
        : '86%';
}

il doit y avoir un moyen moins salissant ..

12
Sonic Soul

Je suis tombé sur cette solution:

Il y a 2 réponses à ce problème.

1) Si vous utilisez quelque chose en dessous de la v10.1.0, vous pouvez utiliser le CSS suivant pour résoudre le problème:

.ag-scrolls {
    height: auto !important;
}

.ag-body {
    position: relative !important;
    top: auto !important;
    height: auto !important;
}

.ag-header { 
    position: relative !important;
}

.ag-floating-top {
    position: relative !important;
    top: auto !important;
}

.ag-floating-bottom {
    position: relative !important;
    top: auto !important;
}

.ag-bl-normal-east,
.ag-bl-normal,
.ag-bl-normal-center,
.ag-bl-normal-center-row,
.ag-bl-full-height,
.ag-bl-full-height-center,
.ag-pinned-left-cols-viewport,
.ag-pinned-right-cols-viewport,
.ag-body-viewport-wrapper,
.ag-body-viewport {
    height: auto !important;
}

2) Tout ce qui est supérieur à v10.1.0, il existe maintenant une propriété appelée 'domLayout'.

6
Kennyb

Ajoutez le code suivant sur la fonction onGridReady pour la largeur et la hauteur automatiques

onGridReady = params => {
   // Following line to make the currently visible columns fit the screen  
   params.api.sizeColumnsToFit();

   // Following line dymanic set height to row on content
   params.api.resetRowHeights();
};

référence Hauteur autoLargeur auto

0
ranjit redekar