原生js实现导出文件功能

这里直接贴代码吧,也没什么好说的

        this.outQueryUrl = 'localhost'    //  请求地址
        const data = JSON.stringify(this.listQuery)    //请求参数,需要转成json字符串
        // ajax请求实例
        const ajax = new XMLHttpRequest() 
        const token = getToken()
        ajax.onreadystatechange = function() {
          if (ajax.readyState === 4 && ajax.status === 200) {
            var blob = this.response
            const result = window.URL.createObjectURL(new Blob([blob]))
            const link = document.createElement('a')
            link.href = result
            link.setAttribute('download', '资产清单.xls')  // 这里设置文件格式
            document.body.appendChild(link)
            link.click()
          }
        }
        ajax.open('post', this.outQueryUrl, true)
        ajax.setRequestHeader('token', token)    // 如果需要 token 校验
        ajax.setRequestHeader('Content-type', 'application/json;charset=UTF-8')
        ajax.setRequestHeader('Accept', 'application/json, text/plain, */*')
        ajax.responseType = 'blob'
        ajax.send(data)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容