Я использую ui-grid v4.4.11. Это что-то вроде хака, но я обнаружил, что docDefinition был установлен в null в строке 20343. Я закомментировал это, и теперь оно работает. См. Тот же код функции prepareAsExcel, где я закомментировал docDefinition.
prepareAsExcel: function(grid, workbook, sheet) {
var docDefinition = {
styles: {
}
};
if ( grid.options.exporterExcelCustomFormatters ){
//docDefinition = grid.options.exporterExcelCustomFormatters( grid, workbook, docDefinition );
}
if ( grid.options.exporterExcelHeader ) {
if (angular.isFunction( grid.options.exporterExcelHeader )) {
grid.options.exporterExcelHeader(grid, workbook, sheet, docDefinition);
} else {
var headerText = grid.options.exporterExcelHeader.text;
var style = grid.options.exporterExcelHeader.style;
sheet.data.push([{value: headerText, metadata: {style: docDefinition.styles[style].id}}]);
}
}
return docDefinition;
},