前端下载文件的写法(兼容IE Firefox chrom)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sinat_34492035/article/details/88015007

下载文件

在我们做项目的过程,会遇到下载文件的需求,有时候是一个静态的文件,在服务器的指定目录,这个时候 我们用

window.location.href = 'src';
//这样就可以实现简单的文件下载

还有一种情况是,后台返回的不是src, 而是一个二进制文件 这个时候我们可以这样写且兼容 ie firefox

        //兼容所有浏览器下载        
		download (data,filename) {          
			if (!data) {
				return
            }
            if (window.navigator && window.navigator.msSaveOrOpenBlob) { // for IE
                window.navigator.msSaveOrOpenBlob(data,filename);
            }else{
                let url = window.URL.createObjectURL(data);
                let link = document.createElement('a');
                link.style.display = 'none';
                link.href = url;
                link.setAttribute('download', filename);

                document.body.appendChild(link);
                link.click();

            }
        },  
        //data就是二进制文件,filename是为下载的文件 命名

猜你喜欢

转载自blog.csdn.net/sinat_34492035/article/details/88015007
今日推荐