由於蘋果手機限制,現在還不能實現瀏覽器下載問題,該方法只適用於安卓手機,已兼容 小米,oppo,華為等機型,暫無其他兼容性問題
const name = '文件'
// 這個方法在移動端已可以正常下載文件,在電腦端會自動打開一個頁面,並不會下載
var a = document.createElement("a");
a.setAttribute("href", fileUrl);
a.setAttribute("target", "_blank");
let clickEvent = document.createEvent("MouseEvents");
clickEvent.initEvent("click", true, true);
a.dispatchEvent(clickEvent);
// 下面這個在移動端存在兼容性問題
// var xhr = new XMLHttpRequest();
// xhr.open('GET', state.pdfUrl, true);
// xhr.responseType = "blob"; //關鍵的一步
// xhr.onreadystatechange = function() {
// if (xhr.readyState == 4) {
// if (xhr.status == 200) {
// var blod = this.response;
// // 兼容IE
// if (!!window.ActiveXObject || "ActiveXObject" in window) {
// navigator.msSaveBlob(blod, filename)
// } else {
// // var src = URL.createObjectURL(blod);
// var eleLink = document.createElement("a");
// eleLink.download = filename;
// eleLink.href = URL.createObjectURL(blod);
// document.body.appendChild(eleLink);
// eleLink.click();
// URL.revokeObjectURL(eleLink.href)
// document.body.removeChild(eleLink)
// }
// }
// }
// };
// xhr.send()
