编程语言
首页 > 编程语言> > javascript – 数据:attachment / csv下载在Edge中不起作用

javascript – 数据:attachment / csv下载在Edge中不起作用

作者:互联网

我希望在从API接收某些数据后触发下载.我这样做的方式如下:

const anchor = window.angular.element('<a/>');
anchor.css({display: 'none'});
window.angular.element(document.body).append(anchor);

anchor.attr({
  href: 'data:attachment/csv;charset=utf-8,' + encodeURI(data),
  target: '_blank',
  download: 'somedata.csv',
})[0].click();

anchor.remove();

这种方法适用于Chrome和Firefox.但是在Edge中,出于某种原因,它没有.

为什么它不能在Edge中运行,我该如何解决?

解决方法:

我遇到了同样的问题,并在Danny Pule之前找到了this great post,所以你的代码应该是这样的:

if (navigator.msSaveBlob) { // IE 10+
    var exportedFilenmae = 'somedata.csv';
    var blob = new Blob([data], { type: 'text/csv;charset=utf-8;' });
    navigator.msSaveBlob(blob, exportedFilenmae);
} else {
    ..........
}

标签:javascript,csv,microsoft-edge
来源: https://codeday.me/bug/20190710/1427010.html