Vue监听关闭页面
mounted() {
window.addEventListener('beforeunload', e => this.beforeunloadHandler(e))
window.addEventListener('unload', e => this.handleWindowClose(e));
this.check();
},
beforeDestroy() {
window.addEventListener('beforeunload', e => this.beforeunloadHandler(e))
window.removeEventListener('unload', e => this.handleWindowClose(e));
},
methods: {
beforeunloadHandler() {
this._beforeUnload_time = new Date().getTime();
},
handleWindowClose(event) {
const gap_time = new Date().getTime() - this._beforeUnload_time;
// 只关闭时执行
if (gap_time <= 5) {
关闭前执行的方法
}
},
- 在
mounted
钩子中,你添加了beforeunload
和unload
事件监听器。 - 在
beforeunloadHandler
方法中,你记录了当前时间到_beforeUnload_time
变量中,以便在稍后计算时间间隔。 - 在
handleWindowClose
方法中,你计算了时间间隔gap_time
,这是当前时间和_beforeUnload_time
之间的差值。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
喜欢就支持一下吧