/**
 * @description 根据后端返回的url在当前页面进行下载
 * @param {string} url
 * @param {string} filename
 * @return {Promise<boolean>}
 */
export const downloadFileUrl = (
  url: string,
  filename: string
): Promise<boolean> => {
  return new Promise((resolve, reject) => {
    fetch(url)
      .then((res) => res.blob())
      .then((blob) => {
        const link = document.createElement('a')
        link.style.display = 'none'
        link.href = URL.createObjectURL(blob)
        link.download = filename
        document.body.appendChild(link)
        link.click()
        document.body.removeChild(link)
        resolve(true)
      })
      .catch((err) => {
        reject('error: 下载失败')
      })
  })
}
最后修改:2022 年 12 月 05 日 04 : 00 PM
如果觉得我的文章对你有用,请随意赞赏