Невозможно создать сортируемую многоуровневую игру с помощью ngTable - PullRequest
0 голосов
/ 04 декабря 2018

У меня есть таблица в angularjs с таблицей ngTable.Я хотел бы иметь кастомную голову для стола, который имеет 2 уровня.

Head

На самом деле я смог создать его, но сортировка не работала.Но это все еще не проблема, это не сработало, потому что мне пришлось вставить в thead выражение ng-include = " templates.header ".

Хорошо, я сделал это,верхняя часть была в нужном месте, но ... нижняя была внизу стола - фактически с функциональной сортировкой.Html:

<section>
<h1 class="page-title">Records</h1>
<div class="list-group faded">
    <div class="portlet light bordered">
        <div class="portlet-body">
            <table class="table table-striped table-bordered table-hover order-column" ng-table="tableParams">
                <tbody>
                <tr ng-repeat="record in $data">
                    <td title="'Id'" sortable="'_id'">{{record._id}}</td>
                    <td title="'Total'" sortable="'count'">{{record.count || 0}}</td>
                    <td title="'Error'" sortable="'errorBefore'">
                        {{record.errorBefore || 0}}
                    </td>
                    <td title="'Timeout'" sortable="'timeoutBefore'">
                        {{record.timeoutBefore || 0}}
                    </td>
                    <td title="'Error'" sortable="'errorAfter'">
                        {{record.errorAfter || 0}}
                    </td>
                    <td title="'Timeout'" sortable="'timeoutAfter'">
                        {{record.timeoutAfter || 0}}
                    </td>
                    <td title="'Finished'" sortable="'done'">{{record.done || 0}}</td>
                    <td title="'Actions'" class="dt-center fit">
                        <button>
                               ...
                        </button>
                    </td>
                </tbody>
                <thead>
                <tr>
                    <th></th>
                    <th></th>
                    <th colspan="2">Before event</th>
                    <th colspan="2">After event</th>
                    <th colspan="2"></th>
                </tr>
                </thead>
                <thead ng-include="templates.header">
                <tr>
                    <th ng-repeat="$column in $columns"
                        ng-class="{
                            'sortable': $column.sortable(this),
                            'sort-asc': params.sorting()[$column.sortable(this)]=='asc',
                            'sort-desc': params.sorting()[$column.sortable(this)]=='desc'
                        }"
                        ng-click="$ctrl.sortBy($column, $event)"
                        ng-if="$column.show(this)"
                        ng-init="template = $column.headerTemplateURL(this)"
                        class="header sortable">

                        <div ng-if="!template" class="ng-table-header ng-scope"
                             ng-class="{'sort-indicator': params.settings().sortingIndicator == 'div'}">
                            <span ng-bind="$column.title(this)"
                                  ng-class="{'sort-indicator': params.settings().sortingIndicator == 'span'}"
                                  class="ng-binding sort-indicator">
                            </span>
                        </div>
                    </th>
                </tr>
                </thead>
            </table>
        </div>
    </div>
</div>

Может ли кто-нибудь мне помочь, как я могу создать многоуровневую головку для этого стола?

Вот плункер, но по какой-то причиненет данных в нем.https://plnkr.co/edit/TeY4dOgW18HpGwZ7aOWj

...