bfcache (back/forward cache) хранит полностью отрисованную страницу в памяти — возврат «Назад» часто мгновенный без повторной загрузки JS и layout.
Unload-хендлеры, Cache-Control: no-store и незакрытые WebSocket/IndexedDB транзакции могут выгнать страницу из bfcache — проверяйте в DevTools Application → Back/forward cache.
- [Back/forward cache — web.dev](https://web.dev/articles/bfcache) — Условия eligibility и диагностика.
- [Page Lifecycle API — web.dev](https://web.dev/articles/page-lifecycle-api) — frozen, hidden, terminated.
---
## SPA
В React/Vue избегайте beforeunload ради аналитики; используйте pagehide и event.persisted.
При восстановлении из bfcache переподключайте live-данные, но не перезагружайте весь бандл.
