导出Excel文件,前端不弹出下载提示框
前后端分离,前端调用后端生产excel文件流,并输出到HttpServletResponse,前端浏览器提示访问成功200,但是没有弹出下载Excel的提示窗口。
问题原因:
ajax方式请求路径,要想出现下载Excel的弹窗,应该是重新打开一个窗口,而ajax默认不动页面直接将值返回,所以没有提升下载。
解决办法:
1、最简单的:
let actionUrl = BASE_URL + “/exportExcel?isTemplate=”+“true”;
window.open(actionUrl);
或者如诺依的:
window.location.href = baseURL + “/common/download?fileName=” + encodeURI(fileName) + “&delete=” + true;
2、前台包装一个方法,from提交
//导出excel
export function exportToExcel(config){
var iform = document.createElement("iframe");
iform.setAttribute("name", "downloadIframe");
iform.setAttribute("style", "display:none");
document.body.appendChild(iform);
var form = document.createElement("form");
document.body.appendChild(form