vue使用Blob下载zip包是后面总是加一个下划线
时间: 2023-11-29 08:26:48 浏览: 83
vue生成word打包下载.zip
在使用Blob下载zip包时,文件名后面总是多了一个下划线,这很可能是因为文件名中包含了一些特殊字符,在文件名中使用特殊字符可能会导致文件名解析不正确,从而导致文件名出现异常。为了避免这种情况,我们可以使用正则表达式过滤掉文件名中的特殊字符,或者手动指定一个不包含特殊字符的文件名。另外,我们还需要注意设置文件的MIME类型,以确保浏览器能够正确地识别文件类型并进行下载。具体的代码实现可以参考以下示例:
```
let link = document.createElement('a');
link.href = window.URL.createObjectURL(new Blob([data]));
let fileName = 'example.zip';
fileName = fileName.replace(/[&\/\\#,+()$~%.'":*?<>{}]/g, ''); // 过滤掉特殊字符
link.download = fileName;
link.click();
```
阅读全文