我尝试在vue.js中创建CSV文件。服务器发送readyment数据,我们可以直接将数据写入csv文件。来自服务器响应的数据是
head1, head2, head3, head4 1,2,3,4 5,6,7,8
这是我从服务器的响应格式。我想写这个数据在CSV格式,并给予下载CSV功能。有没有关于在vue.js中创建和编写文件的想法?
gcuhipw91#
我用javascript找到了答案。下面是我的javascript函数用于下载csv
downloadCSV(jsonData){ const arr = typeof jsonData !== 'object' ? JSON.parse(jsonData) : jsonData; const str = `${Object.keys(arr[0]).map((value) => `${value}`).join(',')}\r\n`; const csvContent = arr.reduce((st, next) => { st += `${Object.values(next).map((value) => `${value}`).join(',')}\r\n`; return st; }, str); const element = document.createElement('a'); element.href = `data:text/csv;charset=utf8,${encodeURI(csvContent)}`; element.target = '_blank'; element.download = 'export.csv'; element.click(); }
数据的值是CSV格式的数据
col1, col2, col3 row1-value1, row1-value2, row1-value3
1条答案
按热度按时间gcuhipw91#
我用javascript找到了答案。
下面是我的javascript函数用于下载csv
数据的值是CSV格式的数据