destroyed
ловушка жизненного цикла не запускается, потому что экземпляр Vue не отключается при обновлении окна sh или закрытии.
В случае необходимости запуска экземпляр должен быть явно уничтожен :
const vue = new Vue(...).$mount("#app");
window.addEventListener('beforeunload', () => {
vue.$destroy();
});
Из-за определенных ограничений событий beforeunload
и unload
перехватчики beforeDestroy
и destroyed
ограничены синхронным кодом, когда они запускаются таким образом, асинхронные операции не будут завершено.