在使用ag-grid自带的exportDataAsExcel导出excel方法时,数字或文本数字过大时导出后就成了科学计数,有什么办法解决么

问题遇到的现象和发生背景
问题相关代码,请勿粘贴截图
运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果

img

用js-xlsx来实现保存,需要自己获取表格的数据源后,将行中的数字转为字符串,目测ag-grid导出的列类型是数字类型的,而不是字符串导致设置列为数字,太大变科学计数法了。js-xlsx则不会,根据传入的类型设置Excel单元格的对应类型,不会转科学计数法
简单示例如下

img

<!DOCTYPE html>
<!-- (C) 2013-present  SheetJS http://sheetjs.com -->
<!-- vim: set ts=2: -->
<html>
<head>
    <title>SheetJS JS-XLSX In-Browser Write Demo</title>
    <meta charset="utf-8" />
</head>
<body>
    <script type="text/javascript" src="https://unpkg.com/xlsx/dist/shim.min.js"></script>
    <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/xlsx/dist/xlsx.full.min.js"></script>

    <script>
        /* original data */
        var filename = "write.xlsx";
        var data = [['001', 11111112003, '11111112003'], ['002','11111112003', 11111112003], ["foo", "bar", new Date("2014-02-19T14:30Z"), "0.3"], ["baz", null, "qux"]]
        var ws_name = "SheetJS";

        if (typeof console !== 'undefined') console.log(new Date());
        var wb = XLSX.utils.book_new(), ws = XLSX.utils.aoa_to_sheet(data);

        /* add worksheet to workbook */
        XLSX.utils.book_append_sheet(wb, ws, ws_name);

        /* write workbook */
        if (typeof console !== 'undefined') console.log(new Date());
        XLSX.writeFile(wb, filename);
        if (typeof console !== 'undefined') console.log(new Date());
    </script>
</body>
</html>

img

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632