Adr*_*scu 5 reactjs react-hooks
我有一个使用钩子在 React 中构建的应用程序,当关闭时需要通知服务器。我尝试使用以下方法来做到这一点:
function onUnload() {
if (roomID !== "")
endGame(roomID, dispatch);
}
useEffect(() => {
return onUnload;
},[])
Run Code Online (Sandbox Code Playgroud)
这里,endGame是一个向后端执行 HTTP 请求的函数。但是,当刷新页面以模拟用户关闭应用程序时,请求永远不会到达服务器,这意味着清理功能不会被执行。关于哪里出了问题有什么想法吗?
提前致谢
刷新页面与组件卸载不同。当刷新页面时,React 状态会重置,因为 React 仅适用于当前客户端会话,刷新相当于重置它。您所期待的可能就是该onunload活动。尝试这个:
window.onbeforeunload = function(e) {
return onUnload();
};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3638 次 |
| 最近记录: |