vue-----window.open打开新窗口文件并且修改窗口标题&&下载文件
downloadFile(url, fileName) {
const xhr = new XMLHttpRequest();
xhr.open("GET", url, true);
xhr.responseType = "blob";
xhr.onload = function () {
if (xhr.status === 200) {
const blob = new Blob([xhr.response]);
const a = document.createElement("a");
const url = window.URL.createObjectURL(blob);
a.href = url;
a.download = fileName;
a.click();
window.URL.revokeObjectURL(url);
}
};
xhr.send();
},
openShowBtn(tag, url, fileName) {
if (!url) return this.$message.error("文件为空!");
if (tag === 2) {
const win = window.open("about:blank");
win.document.title = fileName;
const iframe = document.createElement("iframe");
iframe.src = url;
iframe.style.width = "100%";
iframe.style.height = "100vh";
iframe.style.margin = "0";
iframe.style.padding = "0";
iframe.style.overflow = "hidden";
iframe.style.border = "none";
win.document.body.style.margin = "0";
win.document.body.appendChild(iframe);
} else if (tag === 3) {
this.downloadFile(url, fileName);
}
},