文章目录
一、问题
如果用户登录状态过期,或者没有登录,当用户登录之后回退上一个页面的时候,就会回退到登录页面,这样的体验不是很好
二、解决
history不支持删除历史记录的方法,当从当前页面跳转到下一个页面的时候可以用以下方法,用新的文档替换当前文档就相当于删除了当前页面的历史记录。
window.location.replace('URL')
三、MDN文档
location.replace() 方法以给定的 URL 来替换当前的资源。与 assign() 方法 不同的是,调用 replace() 方法后,当前页面不会保存到会话历史中(session History),这样,用户点击回退按钮时,将不会再跳转到该页面。
因违反安全规则导致的赋值失败,浏览器将会抛出类型为 SECURITY_ERROR 的 DOMException 异常。当调用该方法的脚本所属的源与拥有 Location 对象所属源不同时,通常情况会发生这种异常,此时通常该脚本是存在不同的域下。
如果 URL 无效,浏览器也会抛出 SYNTAX_ERROR 类型的 DOMException 异常。
3.1、语法
object.replace(url);
3.1.1、参数
-
urlDOMString类型,指定所导航到的页面的URL地址。
3.2、示例
// Navigate to the Location.reload article by replacing this page
window.location.replace(
"https://developer.mozilla.org/zh-CN/docs/Web/API/Location/reload",
);
3.3、兼容性

四、最后
本人每篇文章都是一字一句码出来,希望对大家有所帮助,多提提意见。顺手来个三连击,点赞👍收藏💖关注✨,一起加油☕
文章讲述了如何在用户登录状态过期时,通过使用`window.location.replace()`方法替换当前页面,避免回退到登录页面,同时介绍了该方法的语法、参数以及可能遇到的安全和兼容性问题。
801

被折叠的 条评论
为什么被折叠?



