Оценка и сортировка функций шаблона ячейки UI-Grid

Я использую UI-Grid для отображения моих данных в таблице. В одном из столбцов у меня есть шаблон ячейки, в котором есть функция, которая оценивает то, что видит пользователь, являющийся задачей события. Функция принимает этот номер задачи события в качестве параметра и возвращает имя задачи события, которое отображается в таблице. Это нормально, проблема, с которой я столкнулся, заключается в попытке добавить алфавитную сортировку для событийной задачи, отображаемой в таблице. Я пытаюсь узнать, есть ли способ получить данные после их оценки и добавить встроенный в них интерфейс сортировки или создать собственный алгоритм сортировки. Вот мой код из службы таблиц:

var getTable = function ($ctrl) {
        var gridOptions = {
            flatEntityAccess: true,
            rowHeight: 60,
            enableVerticalScrollbar: 0,
            enableSorting: true,    

            columnDefs: [
             {
                 name: 'Event Task',
                 width: '*',
                 sortingAlgorithm: $ctrl.sortingScheduledDates(),
                 cellTemplate: '<div class="ui-grid-cell-contents ng-binding ng-scope" id="eventTask"><a href= "/bin/calendar">{{row.grid.appScope.$ctrl.getEventTypeName(row.entity.event_type)}}</a></div>'
             },

Вот то, что я попытался до Алгоритма сортировки, расположенного в контроллере:

$ctrl.sortingScheduledDates = function(){
        // _dashService.getFutureData($ctrl)
        _dashService.main($ctrl.range)
          .success(
             function (data, status){
                  "use strict";
                  _.extend($ctrl, data);
                  $ctrl.eventNameValues = [];
                  $ctrl.futureEvents.forEach(function(item){
                    var futureEventType = item.event_type;
                    var eventNameKeys = Object.keys($ctrl.eventTypeNames)
                    // console.log($ctrl.eventTypeNames)
                    eventNameKeys.forEach(function(key){
                        if(futureEventType == key){
                            console.log($ctrl.eventTypeNames[key])

$ctrl.eventNameValues.push($ctrl.eventTypeNames[key])

                                                    }

                    })
                     $ctrl.eventNameValues.sort();
             }) 
            }

Вот функция, которая изменяет номер типа события на имя, также расположенное в контроллере:

$ctrl.getEventTypeName = function(eventType){

        return $ctrl.eventTypeNames[eventType];
    };

Что я не понимаю, так это документация по пользовательскому интерфейсу для создания пользовательской сортировки, поэтому, если у кого-то есть какие-либо предложения относительно того, где я могу найти четкое объяснение, это также будет полезно. Спасибо

0 ответов

Другие вопросы по тегам