Utilisation des constantes ui-grid pour désactiver les barres de défilement
Avec la dernière version de l'interface utilisateur-réseau (v3.0.0-rc.16) Il est possible de désactiver le scrollbar horizontal et vertical séparément. J'ai obtenu ce travail en échangeant
$scope.gridOptions.enableScrollbars = false;
avec
$scope.gridOptions.enableHorizontalScrollbar = 0;
$scope.gridOptions.enableVerticalScrollbar = 0;
dans les sources de ui-grid il y a trois constantes définies pour les barres de défilement:
scrollbars: {
NEVER: 0,
ALWAYS: 1,
WHEN_NEEDED: 2
}
étant donné que la grille de l'assurance-chômage est encore instable et change très souvent, je me sentirais plus à l'aise en utilisant ces constantes au lieu des valeurs spécifiques. Mais comment puis-je y accéder ?
3 réponses
Eu ma réponse sur github:
Tout ce que j'avais à faire était de passer uigridconstantis à mon contrôleur comme ceci:
angular.module('myApp').controller('myCtrl',function($scope,uiGridConstants) {
...
$scope.gridOptions.enableHorizontalScrollbar = uiGridConstants.scrollbars.NEVER;
...
})
Avec Jean-Papa style:
ExampleController.$inject = ['$scope', 'uiGridConstants'];
function ExampleController($scope, uiGridConstants) {
var vm = this;
vm.gridOptions = {
enableHorizontalScrollbar : uiGridConstants.scrollbars.NEVER,
enableVerticalScrollbar : uiGridConstants.scrollbars.NEVER
};
}
une solution de contournement pour cela (puisque WHEN_NEEDED est actuellement désactivé) est de mettre enableHorizontalScrollbar: 0
sur vos gridOptions et puis dans votre feuille de style ont le suivant:
.ui-grid .ui-grid-render-container-body .ui-grid-viewport {
overflow-x: auto !important;
}
maintenant la barre de défilement horizontale s'affiche seulement quand nécessaire.