嗨,在react上可以检测到页面是通过ctrl+shift+t命令呈现的吗



是否可以在react上检测到页面是通过ctrl+shift+t命令呈现的?例如,我需要检测这种情况:

  1. 用户关闭浏览器选项卡
  2. 然后用户按ctrl+shift+t重新打开选项卡
  3. 然后我确定选项卡是通过ctrl+shift+t命令打开的

这可能吗?怎样

更新:我的页面上有一段代码:

useEffect(() => {
function handleResize() {
//some stuff
}
window.addEventListener('popstate', handleResize);
return function cleanupListener() {
console.log('backing')

window.removeEventListener('popstate', handleResize);
};
}, []);

当我点击进入这个页面时,我会创建一个历史记录。推送(/聊天(。然后,如果我点击后退按钮,就会显示console.log"backing"。但是,如果我关闭选项卡并重新打开,如果我单击后退按钮,控制台日志不会显示:/

提前感谢

这是不可能的,因为当用户按键从dom偏离焦点时,您无法获取用户按键事件。

但你可以阻止或警告用户关闭标签,

window.addEventListener('beforeunload', function (e) {
e.preventDefault();
e.returnValue = '';
});

相关内容

  • 没有找到相关文章

最新更新