摘要:使用生成及下載瀏覽器端的文件前言之前寫了一篇文章一次下載多個(gè)文件的解決方案中寫了如何下載服務(wù)器端的文件支持連續(xù)下載多個(gè),今天和大家分享下如何在瀏覽器端生成文件并下載。
使用js生成及下載瀏覽器端的文件-Eric
前言
之前寫了一篇文章一次下載多個(gè)文件的解決方案中寫了如何下載服務(wù)器端的文件(支持連續(xù)下載多個(gè)),今天和大家分享下如何在瀏覽器端生成文件并下載。
場(chǎng)景
如果線上經(jīng)常出現(xiàn)一些偶發(fā)性問題,本地又不好排查,我們只好添加一些追蹤日志,當(dāng)出現(xiàn)問題的時(shí)候我們能根據(jù)日志進(jìn)行排查。
解決方案
首先我們先明確一點(diǎn),IE瀏覽器不支持直接下載文件(禁用了反向和正向緩存),我們需要使用另存為功能,google瀏覽器我們可以直接下載。如果是為了記錄日志,我們一般選擇txt文件或者h(yuǎn)tml文件(可以加樣式,排版)。
代碼
const downloadErrorLog = (fileName, content) => { // IE if(!!window.ActiveXObject || "ActiveXObject" in window) { var winname = window.open("", "_blank"); winname.document.open("text/html", "replace"); winname.document.writeln(content);// 如果是jsx代碼,記得轉(zhuǎn)化為html winname.document.execCommand("saveas","", fileName); winname.close(); }else{ let aLink = document.createElement("a"); aLink.download = fileName; aLink.href = "data:text/plain," + content; // 切記,content只能是字符串,如果是html元素,記得使用.innerHTML轉(zhuǎn)換 aLink.click(); } }
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/100847.html
摘要:我們的目標(biāo)是找出最有職業(yè)投資回報(bào)率的主題和技術(shù)。比特幣在幾年內(nèi)增長(zhǎng)了若干個(gè)量級(jí)。比特幣倍拐點(diǎn)在這個(gè)圖表中,每個(gè)箭頭始于倍點(diǎn),指向價(jià)格修正后的最低點(diǎn)。 showImg(https://segmentfault.com/img/remote/1460000017919159); 圖:Jon Glittenberg Happy New Year 2019 (CC BY 2.0) 又到了一年的...
摘要:至此作用域鏈創(chuàng)建完畢。好了,通過深入理解作用域鏈,我們能跟好的理解的運(yùn)行機(jī)制和閉包的原理。 前言 理解javascript中的作用域和作用域鏈對(duì)我們理解js這們語言。這次想深入的聊下關(guān)于js執(zhí)行的內(nèi)部機(jī)制,主要討論下,作用域,作用域鏈,閉包的概念。為了更好的理解這些東西,我模擬了當(dāng)一個(gè)函數(shù)執(zhí)行時(shí),js引擎做了哪些事情--那些我們看不見的動(dòng)作。 關(guān)鍵詞: 執(zhí)行環(huán)境 作用域 作用域鏈 變...
摘要:一次下載多個(gè)文件的解決思路真實(shí)經(jīng)歷最近開發(fā)項(xiàng)目需要做文件下載,想想挺簡(jiǎn)單的,之前也做過,后臺(tái)提供下載接口,前端使用就行了唄。不過開發(fā)的時(shí)候發(fā)現(xiàn),有些文件有附屬文件,點(diǎn)擊下載按鈕需要下載兩個(gè)文件,而且不能使用壓縮包的形式。 一次下載多個(gè)文件的解決思路(iframe) - Eric 真實(shí)經(jīng)歷 最近開發(fā)項(xiàng)目需要做文件下載,想想挺簡(jiǎn)單的,之前也做過,后臺(tái)提供下載接口,前端使用window.l...
摘要:一次下載多個(gè)文件的解決思路真實(shí)經(jīng)歷最近開發(fā)項(xiàng)目需要做文件下載,想想挺簡(jiǎn)單的,之前也做過,后臺(tái)提供下載接口,前端使用就行了唄。不過開發(fā)的時(shí)候發(fā)現(xiàn),有些文件有附屬文件,點(diǎn)擊下載按鈕需要下載兩個(gè)文件,而且不能使用壓縮包的形式。 一次下載多個(gè)文件的解決思路(iframe) - Eric 真實(shí)經(jīng)歷 最近開發(fā)項(xiàng)目需要做文件下載,想想挺簡(jiǎn)單的,之前也做過,后臺(tái)提供下載接口,前端使用window.l...
閱讀 982·2023-04-26 02:56
閱讀 9582·2021-11-23 09:51
閱讀 1889·2021-09-26 10:14
閱讀 2990·2019-08-29 13:09
閱讀 2161·2019-08-26 13:29
閱讀 578·2019-08-26 12:02
閱讀 3573·2019-08-26 10:42
閱讀 3012·2019-08-23 18:18