加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

Angular导出Excel客户端

发布时间:2020-12-17 18:00:35 所属栏目:安全 来源:网络整理
导读:我正在使用Angular v4,我想如何从组件中的对象开始构建Excel电子表格.我需要点击一个按钮下载Excel文件,我必须做这个客户端.我有一个由数组组成的json文件,我需要在excel文件上传输它,可能是风格可定制的.可能吗?如果有,怎么样? 编辑: 请不要使用js库,需
我正在使用Angular v4,我想如何从组件中的对象开始构建Excel电子表格.我需要点击一个按钮下载Excel文件,我必须做这个客户端.我有一个由数组组成的json文件,我需要在excel文件上传输它,可能是风格可定制的.可能吗?如果有,怎么样?

编辑:
请不要使用js库,需要使用Typescript和Angular来完成

解决方法

yourdata = jsonData

ConvertToCSV(objArray) {
            var array = typeof objArray != 'object' ? JSON.parse(objArray) : objArray;
              var str = '';
            var row = "";

            for (var index in objArray[0]) {
                //Now convert each value to string and comma-separated
                row += index + ',';
            }
            row = row.slice(0,-1);
            //append Label row with line break
            str += row + 'rn';

            for (var i = 0; i < array.length; i++) {
                var line = '';
                for (var index in array[i]) {
                    if (line != '') line += ','

                    line += array[i][index];
                }
                str += line + 'rn';
            }
            return str;
        }

在你的HTML中:

<button (click)="download()">export to excel</button>

在组件中:

download(){    
 var csvData = this.ConvertToCSV(yourdata);
                        var a = document.createElement("a");
                        a.setAttribute('style','display:none;');
                        document.body.appendChild(a);
                        var blob = new Blob([csvData],{ type: 'text/csv' });
                        var url= window.URL.createObjectURL(blob);
                        a.href = url;
                        a.download = 'User_Results.csv';/* your file name*/
                        a.click();
                        return 'success';
}

希望你能帮助你

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读