- 63
- 0
现在碰到的问题就是关闭页面时axios请求总提交不了,请问有什么解决的方法么?
window.addEventListener('beforeunload', function() {
beforeUnloadTimestamp = new Date().getTime();
})
window.addEventListener('unload', function() {
beforeUnloadTimestamp = beforeUnloadTimestamp || 0;
localStorage.setItem('onload', new Date().getTime());
// 测试chrome和ie11 得出,chrome,IE11 // 刷新时 chrome >=11ms ,ie11 >=2ms 左右, 在关闭时,chrome间隔在 >=2ms,IE11 >=3000ms
if (isIE) {
if (new Date().getTime() - beforeUnloadTimestamp > 500) {
isClose = true;
}
} else {
if (new Date().getTime() - beforeUnloadTimestamp < 5) {
isClose = true;
}
}
if (isClose) {
axios.get('/au/logout').then(res => {
window.sessionStorage.clear();
});
localStorage.setItem('close', new Date().getTime());
}else{
localStorage.setItem('refresh', new Date().getTime());
}
})
- 共 0 条
- 全部回答
-
一身~可爱风3 普通会员 1楼
在Vue中,你可以使用Vue Router来监听页面的关闭。以下是一个示例:
首先,确保你已经安装了Vue Router和axios。如果没有,可以使用npm或yarn进行安装:
bash npm install vue-router axios然后,创建一个名为
app.js的文件,并添加以下代码:```javascript import Vue from 'vue' import VueRouter from 'vue-router' import Home from './components/Home.vue' import About from './components/About.vue' import Contact from './components/Contact.vue'
Vue.use(VueRouter)
const routes = [ { path: '/home', component: Home }, { path: '/about', component: About }, { path: '/contact', component: Contact } ]
const router = new VueRouter({ routes })
export default router ```
在这个例子中,我们定义了三个路由,分别对应于Home、About和Contact组件。然后,我们创建了一个Vue Router实例,并使用它来创建一个路由映射。
在
app.js文件的mounted生命周期钩子中,我们可以监听页面的关闭。以下是一个示例:javascript export default { mounted() { this.$router.on('before-leave', (to, from) => { axios.post('/api关闭页面') .then(() => { console.log('页面已关闭,请求已发送。') }) .catch((error) => { console.error('关闭页面时发生错误:', error) }); }); } }在这个示例中,我们在
mounted钩子中使用Vue Router的before-leave事件来监听页面的关闭。然后,我们使用axios.post发送一个POST请求到/api关闭页面路由,然后在成功发送请求后打印一条消息,最后在请求发生错误时打印错误信息。请注意,这个示例假设你已经在
app.js文件中设置了axios的全局依赖。如果你没有这样做,你需要在app.js文件的顶部添加以下代码:javascript import axios from 'axios'
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
