这篇文章主要讲解了“怎么在react中禁止浏览器后退”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么在react中禁止浏览器后退”吧!
首先,想到了监听鼠标事件,鼠标监听事件包括以下几种:
click:单击事件。
dblclick:双击事件。
mousedown:按下鼠标键时触发。
mouseup:释放按下的鼠标键时触发。
mousemove:鼠标移动事件。
mouseover(mouseenter):移入事件。
mouseout(mouseleave):移出事件。
contextmenu:右键事件
上述所有事件均无法监听到机械键盘鼠标侧边的后退快捷键
因此,采用了另外一重禁止浏览器后退的方法
componentDidMount(){
window.addEventListener('popstate', function () {
history.pushState(null, null, document.URL);
});
}
注意:禁止回退到哪个页面,代码就加入到哪个页面中。
列如从A跳转到B。如果禁止B页面回退到A。则上述代码加入到A页面中。
可能出现的报错
意外的使用history no-restricted-global(禁用特定的全局变量)
解决方式:‘在history前面加widnow.’
componentDidMount(){
window.addEventListener('popstate', function () {
window.history.pushState(null, null, document.URL);
});
}
此外,不要在 componentWillUnmount()删除监听事件,会失效。
感谢各位的阅读,以上就是“怎么在react中禁止浏览器后退”的内容了,经过本文的学习后,相信大家对怎么在react中禁止浏览器后退这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。