Я новичок здесь, я работаю с Угловым UI-Grid, и у меня есть небольшая проблема. Сетка, которую я обрабатываю, имеет древовидную структуру, которая отлично работает. Но чтобы упростить отслеживание этой структуры для пользователя, я хочу реализовать разные цвета на уровне.Угловой уровень дерева UI-Grid с различными шаблонами
Я создал это Plunker с двумя примерами: во-первых, как вы должны видеть разные цвета на уровне, а во-вторых, как он себя ведет сегодня. Кто-нибудь сделал что-то подобное или у вас есть идея, как это исправить?
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>
Выглядит отлично, какая проблема? – Jeb50
@ Jeb50 Когда уровни открываются один за другим (во второй сетке), класс строк не обновляется, поэтому эффект уровня теряется – RalleSaid
вы пробовали [ag-grid] (https: //www.ag-grid .com /)? Я тоже расстроился с помощью ui-grid, потому что многие параметры/функции не документированы, некоторые документально оформлены недостаточно подробно, чтобы получить ключ, некоторые даже не работают в Plunker. Я решил отдать эту сетку. – Jeb50