diff --git a/assets/js/phoenix_live_view/hooks.js b/assets/js/phoenix_live_view/hooks.js index 0eb0adb688..28d1986824 100644 --- a/assets/js/phoenix_live_view/hooks.js +++ b/assets/js/phoenix_live_view/hooks.js @@ -264,6 +264,15 @@ Hooks.InfiniteScroll = { } }, + updated() { + // Check if the scroll container still exists + // https://github.com/phoenixframework/phoenix_live_view/issues/4169. + if (!this.scrollContainer.isConnected) { + this.destroyed(); + this.mounted(); + } + }, + destroyed() { if (this.scrollContainer) { this.scrollContainer.removeEventListener("scroll", this.onScroll);