angular文档流下载为文件

 downLoadFileGet(url: any, fileName: any,params) {
        const id = this.message.loading('导出中', { nzDuration: 0 }).messageId;
        
        return new Promise((resolve, reject) => {
          this.http
            .post(url,params, {
              responseType: "blob",
              observe: "response"
            })
            .subscribe(
              (res:any) => {
                var reader = new FileReader();
                this.message.remove(id);
                console.log(res);
                
                // let disposition = res.headers.get('location');
                if(res.body.size){
                  this.downFile(res.body, fileName);
                  resolve(res)
                }
                
                
              },
              err => {
                reject(err.msg);
              }
            );
        });
      }
      downFile(blob, fileName) {
        if (window.navigator.msSaveOrOpenBlob) {
          navigator.msSaveBlob(blob, fileName);
          // navigator.msSaveBlob(blob);
        } else {
          var link = document.createElement("a");
          link.href = window.URL.createObjectURL(blob);
          link.download = fileName;
          // 触发点击
          document.body.appendChild(link);
    
          link.click();
          document.body.removeChild(link);
          window.URL.revokeObjectURL(link.href);
        }
      }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值