fly*_*bee 4 javascript reactjs
我有一些 Javascript 代码,将在组件完成加载时运行:
function HelloThere() {
React.useEffect(() => {
setTimeout(() => {
// code to make a server call to write data to DB
}, 60 * 1000);
}, []);
return <h1>Hello there</h1>;
}
Run Code Online (Sandbox Code Playgroud)
我的问题是,如果 useEffect 中的代码被命中(组件已加载),但用户在 60 秒超时之前关闭选项卡(或刷新浏览器),代码是否仍会在后台运行并将数据写入数据库?谢谢您的帮助!
不,代码不会运行。我认为您可以使用 来验证这一点localStorage。设置超时,运行脚本,关闭选项卡,然后查看localStorage是否更新。
例如:
setTimeout(() => {
window.localStorage.setItem('timeout-test', 'update after tab is closed')
}, 5000);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
474 次 |
| 最近记录: |