javascript - 与 ctrl+F5 相同的方式强制刷新 REACTjs 应用程序
问题描述
我有一个简单的问题。我有一个 REACTjs 应用程序,它在启动时向 API 发出一些请求。这些请求通常只执行一次,但有时,用户可能希望手动刷新应用程序。
执行 ctrl+F5 (或通过浏览器刷新页面)时,它工作正常。
我尝试在我的应用程序中添加一个具有相同功能的按钮:
<button value="Refresh Page" onClick="window.location.reload(true)">Refresh</button>
但它只执行两个请求:0.junk.js
并且0.junk.js.map
都返回 304 状态。
有没有办法实现与浏览器刷新相同的行为?
解决方案
尝试调用一个函数:
onClick={() => window.location.reload(true)}
或者只需更新主要组件的任何状态:
this.setState({ refresh: true })