ui-grid:固定列和主网格的单独 headerTemplate

ui-grid: separate headerTemplate for pinned column and main grid

我正在使用 ui-grid 3 和默认的 ui.grid.pinning 插件。我的网格有一个类似于这样的配置:

$scope.gridOptions = {
      enableSorting: true,
      headerTemplate: 'views/report-header.html',
      columnDefs: [
        { field: 'firstName', displayName: 'First Name', width: 120, pinnedLeft: true },
        { field: 'lastName', displayName: 'Last Name', width: 120 },
        { field: 'company', displayName: 'Company', width: 120 },
      ]
    }

这会正确地导致 firstName 列被固定。但是,它也会导致自定义 headerTemplate 视图(在本例中只是 <div>I am unique!</div>)被设置为 both 固定列和左侧的主网格其中:

有什么方法可以指定哪些 header 应该设置为固定列,哪些应该设置为主网格?

我最终定义了单独的模板(分别为 pinnedGridTemplate.htmlmainGridTemplate.html),并将它们分配给应该进入任一部分的列。上面的定义就变成了:

 $scope.gridOptions = {
      enableSorting: true,
      columnDefs: [
        {
          field: 'firstName',
          displayName: 'First Name',
          width: 120,
          pinnedLeft: true,
          headerTemplate: 'views/pinnedGridTemplate.html'
        },
        {
          field: 'lastName',
          displayName: 'Last Name',
          width: 120,
          headerTemplate: 'views/mainGridTemplate.html'
        },
        {
          field: 'company',
          displayName: 'Company',
          width: 120,
          headerTemplate: 'views/mainGridTemplate.html'
        },
      ]
    }