首页 > 解决方案 > 与 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 状态。

有没有办法实现与浏览器刷新相同的行为?

标签: javascriptreactjs

解决方案


尝试调用一个函数:

onClick={() => window.location.reload(true)}

或者只需更新主要组件的任何状态:

this.setState({ refresh: true })

推荐阅读