前端vue/js刷新浏览器页面方法-案例

328 篇文章 80 订阅

强制刷新当前页面

reload -- 强迫浏览器刷新当前页面

location.reload([bForceGet])   //重新加载当前文档
bForceGet, 可选参数, 默认为 false,从客户端缓存里取当前页。true, 则以 GET 方式,从服务端取最新的页面, 相当于客户端点击 F5("刷新")

replace  -- 通过指定URL替换当前缓存在历史里(客户端)的项目,因此当使用replace方法之后,你不能通过“前进”和“后退”来访问已经被替换的URL

location.replace(location.href);  //在服务端重新生成
当调用 location.reload() 方法时, aspx页面此时在服务端内存里已经存在, 因此必定是 IsPostback 的。
如果有这种应用: 需要重新加载该页面,也就是说期望页面能够在服务端重新被创建,期望是 Not IsPostback 的。这里,location.replace() 就可以完成此任务。被replace的页面每次都在服务端重新生成。
history.go(0) 
location=location 
location.assign(location) 
document.execCommand('Refresh') 
window.navigate(location) 
document.URL=location.href

this.$router.go(0)

vue中路由方法

location. reload(),this.$router.go(0) 这两种都可以刷新当前页面的,缺点就是相当于按ctrl+F5 强制刷新那种,整个页面重新加载,会出现一个瞬间的空白页面,体验不好

自动刷新页面

<meta http-equiv="refresh" content="20"> //每隔20秒刷新一次页面

页面自动跳转

<meta http-equiv="refresh" content="20;url="https://jackiehao.blog.csdn.net/"> //隔20秒后跳转到https://jackiehao.blog.csdn.net/页面

关闭窗口时刷新或者想开窗时刷新的话,在<body>中调用以下语句即可

<body onload="opener.location.reload()"> 
开窗时刷新 
<body onUnload="opener.location.reload()"> 
关闭时刷新 

另辟蹊径

新建一个空白页面supplierAllBack.vue,点击确定的时候先跳转到这个空白页,然后再立马跳转回来

空白页supplierAllBack.vue里面的内容

这个方式,相比第一种不会出现一瞬间的空白页,只是地址栏有个快速的切换的过程,可采用


provide / inject 组合 方式是我试过最实用的,下面用项目截图给大家说明下:首先,要修改下你的app.vue

通过声明reload方法,控制router-view的显示或隐藏,从而控制页面的再次加载,这边定义了

isRouterAlive //true or false 来控制

然后在需要当前页面刷新的页面中注入App.vue组件提供(provide)的 reload 依赖,然后直接用this.reload来调用就行

 

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: 在Web开发中,经常需要通过JavaScript来监听浏览器关闭和刷新事件。可以使用window对象的beforeunload和unload事件来实现这个功能。 beforeunload事件会在用户要关闭页面时触发,可以用来在用户离开前提示一些消息。可以通过window.onbeforeunload属性来绑定beforeunload事件处理程序。 当用户点击确定按钮时,页面将被关闭,如果用户点击取消按钮,则页面将保持不变。在beforeunload事件处理程序中,可以通过返回一个非空字符串来提示用户需要保存的未完成操作。 unload事件会在页面完全卸载后触发,可以用来清除一些资源,例如定时器和事件监听器等。可以通过window.onunload属性来绑定unload事件处理程序。 需要注意的是,对于浏览器关闭事件,不同的浏览器有不同的支持方式和行为,因此,在实现监听浏览器关闭和刷新事件时,需要进行兼容性测试,以保障其在不同的浏览器中的稳定性和可靠性。 总的来说,通过使用 JavaScript 监听浏览器关闭和刷新,可以处理一些必要的业务逻辑,从而提升用户体验和应用稳定性。 ### 回答2: JavaScript 可以监听浏览器关闭和刷新等事件,以促进更好的用户体验。这些事件通常是用户主动进行的,但也有可能是浏览器崩溃或其他不可预测的情况引发的。 要监听浏览器关闭事件,可以使用 window.onbeforeunload 事件。这个事件将在浏览器窗口将要关闭之前触发。可以将要执行的代码放在这个事件的回调函数中,以便在用户关闭浏览器时执行。 要监听浏览器刷新事件,可以使用 window.onbeforeunload 事件和 window.onload 事件。在页面加载时,window.onload 事件会被触发。然后,如果用户刷新页面,window.onbeforeunload 事件会在页面重新加载之前被触发。可以使用这些事件来保存当前页面的状态,并在页面重新加载时恢复状态。 要注意的是,浏览器的不同版本和不同设置可能会影响这些事件的行为。有些浏览器可能不允许在 onbeforeunload 事件中弹出警告框或确认框,而有些浏览器则可以。因此,需要谨慎处理这些事件,并确保它们不会对用户造成不必要的干扰或安全风险。 综上所述,JavaScript 监听浏览器关闭和刷新事件可以帮助我们提供更好的用户体验,并确保我们的网站和应用程序在这些情况下仍然能够正常使用。 ### 回答3: JS 监听浏览器关闭或刷新是 Web 开发中比较常见的需求,主要涉及到浏览器事件的监听和处理。比如在某些场景下,当用户关闭浏览器刷新页面时,需要提醒用户或执行一些特定的操作。 浏览器关闭事件监听: JS 监听浏览器关闭主要通过 `window` 对象提供的 `beforeunload` 事件来实现。`beforeunload` 事件在浏览器卸载页面之前被触发,可以用来防止用户误操作或提醒用户保存数据。 例如,在页面中添加以下 JS 代码,就能监听浏览器关闭事件: ``` window.addEventListener('beforeunload', function(event) { event.preventDefault(); return event.returnValue = '确定离开此页面吗?'; }); ``` 上述代码中,我们使用 `addEventListener` 方法绑定了 `beforeunload` 事件的监听器。在事件回调函数中,我们使用 `event.preventDefault()` 方法来阻止浏览器默认的关闭行为,并返回一个提示用户的字符串,如果用户确认离开页面,才能真正关闭页面浏览器刷新事件监听: JS 监听浏览器刷新主要通过 `beforeunload` 和 `unload` 事件组合使用实现。当用户刷新页面时,会先触发 `beforeunload` 事件,然后触发 `unload` 事件。 例如,在页面中添加以下 JS 代码,就能监听浏览器刷新事件: ``` window.addEventListener('beforeunload', function(event) { // Do something before refreshing }); window.addEventListener('unload', function(event) { // Do something after refreshing }); ``` 上述代码中,我们分别使用 `addEventListener` 方法绑定了 `beforeunload` 和 `unload` 事件的监听器,并在事件回调函数中分别执行了特定的操作。 需要注意的是,由于 `beforeunload` 事件可以阻止浏览器关闭或刷新页面,因此在使用它时需要谨慎考虑,以避免影响用户体验和引起安全问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JackieDYH

谢谢您嘞!我会继续加油地

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值