问题描述
EDIT 我解决了我自己的问题。我需要在 ''' 中调用 destroyOnClose 模态 ''' 标签。不确定这是否是最好的方法,但它在我的情况下有效。
我是 React JS/General Web Dev(来自 C++/Java 背景)的完全初学者,并且在将 PDF 文件加载到模态弹出窗口时遇到了障碍。
以下代码将获取一个 pdf 文件并渲染到模态窗口中。这工作得很好。但是,当我关闭并重新打开 Modal 时,我希望 pdf 刷新,因为每次调用 URL 时内容都会发生变化。
我不认为这是服务器端的问题,因为我可以获取文件中的 url 并在浏览器中单独运行它,它每次都会生成一个全新的独特文档。我正确设置了响应标头。
有什么我遗漏的吗?我使用的是 React 还是 AntD 组件来缓存我的文件?如果是这样,我如何告诉它不要并且每次都获得新的获取?我在这里不知所措...
反应代码:
<Modal width={850} title="Print Ticket" visible={isModalVisible_2} onOk={handleOk_2} onCancel={handleCancel_2}>
<Document
file="http://localhost:8888/api/pdf"
onLoadSuccess={onDocumentLoadSuccess}
>
<Page pageNumber={pageNumber} />
</Document>
<p>Page {pageNumber} of {numPages}</p>
</Modal>
服务器端响应头
r.headers['Content-Type'] = 'application/pdf'
r.headers["Cache-Control"] = "no-cache,no-store,must-revalidate"
r.response.headers["Pragma"] = "no-cache"
r.response.headers["Expires"] = "0"
r.response.headers['Cache-Control'] = 'public,max-age=0'
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)