angularjs - 无法使用AngularJS在Chrome以外的任何浏览器中下载变量到文件
问题描述
我需要允许用户下载 CSV 文件,我将 CSV 作为字符串值。以下功能适用于 Chrome,但不适用于 IE 10/11、Edge 或 Firefox。
function downloadCSV(CSV, fileName) {
var data = "data:text/json;charset=utf-8," + encodeURIComponent(CSV);
var downloader = document.createElement('a');
downloader.setAttribute('href', data);
downloader.setAttribute('download', fileName+'.csv');
downloader.click();
};
这在 Chrome 中完美运行。
其他浏览器能够在 console.log 中看到 CSV 变量,但不会下载。Edge 将在控制台中输出一个警告,其中包含一个包含 CSV 内容的巨大链接,如果我单击该链接,则会在 Debugger 窗口中将 CSV 显示为字符串变量。触发上述功能时,Firefox 不会给出错误或警告。
我已经尝试为不同的浏览器添加兼容性,但它并没有改变任何东西。
<system.webServer>
<httpProtocol>
<customHeaders>
<clear />
<!--<add name="X-UA-Compatible" value="IE=10" />
<add name="X-UA-Compatible" value="IE=11" />-->
<add name="X-UA-Compatible" value="IE=edge" />
</customHeaders>
</httpProtocol>
</system.webServer>
解决方案
推荐阅读
- reactjs - 在 React+Redux 项目中使用 Bootstrap 和 jQuery 库
- python - 如何使由线程更新的字符串反映 Python 诅咒的变化?
- vue.js - 即使响应为 200(成功),也会调用 Axios Catch
- java - appium`HasClipboard()`的“方法尚未实现”异常
- android - 颤振:断言失败:'builder!= null home!= null
- html - 在字段集图例标题旁边添加图标
- python - 如何克服 TGAN 生成器文件未找到错误
- html - 是否有一种普遍支持的方法可以在 CSS/SVG 中制作倾斜的“毛玻璃”效果?
- python - 如何避免 Pycharm 上有效 Python 代码的错误
- angular - fullcalendar js 不会在 Internet Explorer 11 上呈现视图