angular-ui/ui-grid

Header Column labels not being set

Open

#5,078 建立於 2016年2月8日

在 GitHub 查看
 (2 留言) (0 反應) (0 負責人)JavaScript (2,496 fork)batch import
good first issue

倉庫指標

Star
 (5,395 star)
PR 合併指標
 (30 天內沒有已合併 PR)

描述

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?

貢獻者指南