angular-ui/ui-grid

Header Column labels not being set

Open

#5 078 ouverte le 8 févr. 2016

Voir sur GitHub
 (2 commentaires) (0 réactions) (0 assignés)JavaScript (2 496 forks)batch import
good first issue

Métriques du dépôt

Stars
 (5 395 stars)
Métriques de merge PR
 (Aucune PR mergée en 30 j)

Description

I'm trying to write tests for my ui-grid, but the class 'ui-grid-header-cell-label' isn't being added to the span with my header label which causes my selector and test to fail. Looking at https://github.com/angular-ui/ui-grid/blob/master/src/templates/ui-grid/uiGridHeaderCell.html, the class should be added and I can't figure out why it isn't in my case.

This is what my initGridOptions looks like:

NS.allSubscriptions.prototype.initGridOptions = function () {
    var self = this;
    function rowTemplate() {
        var rowTemplateStr =
            '<div class="user-subscription">' +
            '<div ng-repeat="(colRenderIndex, col) in colContainer.renderedColumns track by col.uid"' +
            'ng-class="{\'ui-grid-row-header-cell\': col.isRowHeader}" class="ui-grid-cell" ui-grid-cell >' +
            '</div>' +
            '<div style="clear:both;"></div>' +
            '</div>';
        return rowTemplateStr;
    }
    self.gridOptions = {
        enableColumnResizing: true,
        //0 = never
        enableHorizontalScrollbar: 0,
        enableVerticalScrollbar: 0,
        rowTemplate: rowTemplate(),
        columnDefs: [
            {
                name: 'email',
                field: 'userEmail',
                enableColumnMenu: false,
                width: 150,
                enableSorting: true,
            },
            {
                name: 'version',
                field: 'getVersionString()',
                enableColumnMenu: false,
                sortingAlgorithm: self.versionSortingAlgorithm
            },
            {
                name: 'state',
                field: 'getStateDisplayName()',
                enableColumnMenu: false,
                enableSorting: true
            },
            {
                name: 'upgrade status',
                field: 'upgradeStatus',
                enableColumnMenu: false,
                cellTemplate: '<div class="ui-grid-cell-contents"' +
                'ng-class="{\'upgradeSuccess\': row.entity.upgradeStatus == \'SUCCESS\',' +
                        '\'upgradeError\': row.entity.upgradeStatus == \'ERROR\'}">'
                +'{{row.entity.getUpgradeStatusDisplay()}}'
                +'</div>',
                minWidth:125,
                enableSorting: true
            },
            {
                name: 'upgrade message',
                field: 'upgradeMessage',
                minWidth:170,
                enableColumnMenu: false,
                enableSorting: true
            },
            {
                //value must be different from display for sorting purposes
                name: 'subscribed',
                field: 'created',
                enableColumnMenu: false,
                cellTemplate: '<div class="ui-grid-cell-contents">'
                +'{{row.entity.getFormattedCreatedDate()}}'
                +'</div>',
                enableSorting: true
            },
            {
                //value must be different from display for sorting purposes
                name: 'updated',
                field: 'modified',
                enableColumnMenu: false,
                cellTemplate: '<div class="ui-grid-cell-contents">'
                +'{{row.entity.getFormattedUpdatedDate()}}'
                +'</div>',
                enableSorting: true
            },
            {
                name: 'action',
                enableColumnMenu: false,
                enableSorting: false,
                cellTemplate: '<div style="text-align:right;" class="ui-grid-cell-contents">'
                +'<a ng-if="row.entity.showUpgradeLink()"'
                +'ng-click="grid.appScope.upgradeSubscription(row.entity)">Upgrade</a>'
                +'</div>',
                maxWidth:80
            }
        ],
        onRegisterApi: function (gridApi) {
            self.gridApi = gridApi;
            self.gridApi.core.on.sortChanged(self.scope, function (grid, sort) {
                self.gridApi.core.notifyDataChange(self.uiGridConstants.dataChange.COLUMN);
            });
        }
    };
};

Is there something I'm missing/overwriting that's preventing the header-cell-label class to be added?

Guide contributeur