0

在这里反应开发者!

我正在使用 SQL Reporting Services 的 URL 访问,并且我正在以 PDF 格式获取我的报告文件,现在当用户单击此按钮时,文件已下载,但我还没有找到知道文件何时的方法完全下载并使用此信息隐藏加载消息(目前我只是使用超时)。

我正在考虑使用 promise 或 async/await 函数,但我在研究中看到的示例使用“.pdf”终止链接,这不是我的情况,因此我对如何解决这个问题有点迷茫或者如果它甚至可能。

下面我附上了到目前为止我一直在尝试的代码片段(href 只是一个例子):

const getDataFromURL = () => {
      setLoadPanelVisible(true);
      const link = document.createElement("a");
      link.href = 'https://myrshost/ReportServer?/myreport&rs:Format=PDF';
      document.body.appendChild(link);
      link.click();
      document.body.removeChild(link);
      setTimeout(() => {
         setLoadPanelVisible(false);
      }, 4000);
}

<button onClick={getDataFromURL}>Print</button>

非常感谢任何形式的帮助!

4

0 回答 0