Ag-grid - 导出 excel 不在 IE 中将字符串解析为日期格式

Ag-grid - Exported excel does not parse string to date format in IE

我正在将 ag-grid 数据导出到 excel,其中几乎没有 date 类型的列。打开导出的文件时,我发现 date 类型的列在从 IE 导出时不会自动格式化为 'Date' 格式。同样的事情在 Chrome 中工作正常。下面是格式化日期字符串的代码 -

exportData: function() {
        var vm = this;
        var params = {
            fileName : vm.pageTitle + '.csv',
            processCellCallback  : function(params) { 
             if (params.value) {
                 if(params.column.colId === "endDate" || params.column.colId === "startDate"){
                    return params.value.toLocaleDateString();
                 }
             }
             return params.value;
            }
        };
        vm.gridOptions.api.exportDataAsCsv(params);     
    }

下面是 excel IE 截图 - 一般格式应该是 Date

在此先感谢您的帮助。

据此question, toLocaleDateString() behaves funky in IE. My guess is that it is adding a zero width character。我猜这是因为我使用零宽度字符强制在 excel 中进行格式化(我的用例是 1/1 需要保持这种方式而不是像 [=21] 那样转换为 1-jan =]想做)

因此,为了解决您的问题,您可以自己格式化日期以确保放置了哪些字符,或者您可以使用正则表达式排除任何空白字符:

.toLocaleDateString().replace(/\s/g,'')