vue实现填写的下载功能

img

img


表格是用户填写的,填写完成后需要进行下载

客户端用blob对象就能实现下载,不需要走服务器端。

走服务器端的也不能用axios之类ajax类库请求,这样无法弹出下载保存对话框,应该直接location.href='xxxxx'跳转到下载网址实现下载保存。就是下面截图的代码替换为location.href='xxxx',xxxx为题主请求的网址

img

下面为直接保存的js代码

<script>
    function saveTextToFile(content,filename) {
        var blob = new Blob([content]);
        const url = window.URL.createObjectURL(blob);
        const a = document.createElement('a');
        a.style.display = 'none';
        a.href = url;
        a.download = filename;
        document.body.appendChild(a);
        a.click();
        setTimeout(() => {
            document.body.removeChild(a);
            window.URL.revokeObjectURL(url);
        }, 100);
    }
    window.onload = function () {
        saveTextToFile('要保存到文件的内容','测试.txt')
    }
</script>

有帮助麻烦点下【采纳该答案】,谢谢~~有其他问题可以继续交流~

下载excel文件,还是输入的文本内容?