前端保存文件并且自定义内容的方法实现
1. 封装一个下载文件的函数
const downloadTxt = (fileName: any, content: any) => { let a = document.createElement('a'); a.href = 'data:text/plain;charset=utf-8,' + content a.download = fileName document.body.appendChild(a); a.click(); document.body.removeChild(a); }
ps:fileName 是文件名 ,eg:file.txt ,file.vue ,file.json 等 ;
content 是自定义文件内容 ;
2. 文件调用
downloadTxt("file.json", encodeURIComponent(JSON.stringify(obj)))
ps:此处的 obj 是一个数组对象数据 ,
如果不适用 encodeURLComponent 编码内容 ,在往文件插入数据content的时候遇到 # 就会停止插入,导致内容缺失 ;