javascript - 如何在Vue中关闭一页之前存储数据
问题描述
据我所知,如果你关闭或刷新页面,Vue中的钩子' beforedestroy '和' destroy'不会被触发。所以也许我可以使用
window.onbeforeunload = function() { ... }
这是代码
mounted() {
window.onbeforeunload = function() {
window.localStorage.setItem('form', JSON.stringify(this.form))
}
}
但是,我存储的内容是未定义的。所以我认为在调用函数时实例已经被销毁。这样就无法访问this.form了。有没有别的办法?
解决方案
您this
通过定义匿名函数来隐藏关键字,请改用箭头函数:
window.onbeforeunload = () => {
window.localStorage.setItem('form', JSON.stringify(this.form))
}
推荐阅读
- hadoop-yarn - java.lang.NoClassDefFoundError spark-submit 在纱线集群模式下,集群正在使用 Ambari 设置
- stripe-payments - 在 Laravel Valet 中使用 Stripe Webhook
- iframe - iFrame 中的引导程序
- java - 为什么此代码打印 248,而不是 -8?
- laravel - 在迁移 laravel 中不使用外国是坏习惯吗?
- mysql - 内部组的多个订单
- html - 安装 npm 包时 json 意外结束
- php - Laravel:在急切加载中将类函数作为回调传递?
- c# - 执行异步分页调用时出错
- c# - 从基于 C# 的应用程序到 PHP 的安全 REST API 调用,保存个人信息,如登录凭据、私人消息?