支持IE11的JS数据存储为本地CSV文件
数据基础
var header= [
{ key : 'a' , title : 'b' } ,
{ key : 'a' , title : 'b' } ,
{ key : 'a' , title : 'b' } ,
{ key : 'a' , title : 'b' } ,
{ key : 'a' , title : 'b' } ,
{ key : 'a' , title : 'b' }
]
var data= [ ... ... . . ]
var fileName= '文件名.csv'
实现方法
exportCSV ( header, data, fileName ) {
var csvContent= '\ufeff'
const _header= header. map ( h => h. title) . join ( "," )
const keys= header. map ( item => item. key)
csvContent+= _header= '\n'
data. forEach ( ( item, index ) => {
let dataString= ''
for ( let i= 0 ; i< keys. length; i++ ) {
dataString+= item[ keys[ i] ] + ','
}
csvContent+= index< data. length? dataString. replace ( / ,$ / , '\n' ) : dataString. replace ( / ,$ / , '' )
} )
let blob= new blob ( [ csvContent] , { type : 'data: text/ csv; charset= utf- 8 } )
windows. navigator. msSaveBlob ( blob, fileName)
}