Ich bin neu hier, ich arbeite mit Angular UI-Grid, und ich habe ein kleines Problem. Das Raster, das ich behandle, hat eine Baumstruktur, die perfekt funktioniert. Um die Struktur für den Benutzer einfacher zu machen, möchte ich verschiedene Farben pro Ebene implementieren.Angular UI-Grid-Baum-Ebene mit verschiedenen Vorlagen
Ich habe diese Plunker mit zwei Beispielen erstellt, die erste ist, wie Sie die verschiedenen Farben pro Ebene sehen sollten, und die zweite ist, wie es sich heute verhält. Hat jemand so etwas gemacht oder haben Sie eine Idee, wie Sie das beheben können?
app.js:
var app = angular.module('app', ['ui.grid','ui.grid.treeView']);
app.controller('MainCtrl', ['$scope', '$http','uiGridTreeViewConstants', function ($scope, $http, uiGridTreeViewConstants) {
$scope.myData = [
{"ubi_id":321,"ubi_nom":"America","ubi_pad_id":null,"ubi_tip_id":1,"$$treeLevel":0},
{"ubi_id":322,"ubi_nom":"Sudamerica","ubi_pad_id":321,"ubi_tip_id":2,"$$treeLevel":1},
...
];
var rowtpl = '';
rowtpl += '<div ng-class="{\'nivelGrilla-{{row.entity.$$treeLevel}}\': row.entity.$$treeLevel != \'undefined\' }">';
rowtpl += '<div ng-repeat="(colRenderIndex, col) in colContainer.renderedColumns track by col.colDef.name"';
rowtpl += 'class="ui-grid-cell" ng-class="{ \'ui-grid-row-header-cell\': col.isRowHeader }" ui-grid-cell>';
rowtpl += '</div></div>';
$scope.gridOptions = {
data:'myData',
rowTemplate:rowtpl,
};
}]);
css:
.nivelGrilla-0{
background-color: #254158;
color: white;
}
.nivelGrilla-1{
background-color: #3F6F96;
color: white;
}
html:
<div id="grid1" ui-grid="gridOptions" ui-grid-tree-view class="grid"></div>
Sieht gut aus, welches Problem? – Jeb50
@ Jeb50 Wenn die Ebenen nacheinander geöffnet werden (im zweiten Raster), wird die Zeilenklasse nicht aktualisiert, daher ist der Ebeneneffekt verloren. – RalleSaid
haben Sie versucht [ag-grid] (https: //www.ag-grid .com /)? Ich war auch frustriert mit dem UI-Grid, weil viele Optionen/Funktionen nicht dokumentiert sind, einige dokumentiert sind nicht detailliert genug, um einen Hinweis zu bekommen, einige sogar nicht in Plunker arbeiten. Ich habe mich entschieden, diesem ag-Grid eine Chance zu geben. – Jeb50