【发布时间】:2021-12-12 21:57:11
【问题描述】:
因此,出于某种原因,如果我想在用户离开页面时运行一个函数来更新数据库,我可以使用 useEffect 返回/清理函数来实现。但是,如果他们关闭页面/浏览器,有没有办法做到这一点?
useEffect(() => {
return () => {
window.open("https://www.google.com", "_blank");
};
}, []);
我尝试过这样的测试,但似乎从来没有奏效。所以我想知道是否有办法做到这一点。
【问题讨论】:
-
关闭浏览器不会立即停止 JavaScript 吗?
-
@darthzeran, onBeforeUnload 可能就是你要找的东西
-
@NicholasTower,我将如何在反应中使用 onBeforeUnload?我尝试将它们放在 useEffect 中,但是当我关闭选项卡时,我的警报或日志或在新选项卡中打开都不会触发
标签: reactjs use-effect