我使用follow函数来检测窗口关闭事件以执行一些清理任务:
window.addEventListener('beforeunload', function(e) {
console.log("window close");
// perform cleanup
}
不幸的是,我也在流星自动重载期间(例如代码发生变化时)得到此事件,在此期间我不想进行清理。
如何区分这两种情况? (我有一个特殊的用例,我必须区分这两种情况)
答案 0 :(得分:3)
你必须利用流星onmigrate
api来帮助你消除这两种情况:
客户端代码:
var hotcodepush = false;
Reload._onMigrate(function () {
hotcodepush = true;
return [true];
});
window.addEventListener('beforeunload', function(e) {
if(!hotcodepush) console.log("window close");
if(hotcodepush) console.log("Hot code reload");
}
答案 1 :(得分:-1)
不知道流星。我会尝试找到在自动更新之前执行的点(如果可能的话)并定义一个中止事件|变量| ...我希望这有帮助