diff --git a/changelog.d/fixed-footer-back-to-top-listeners.md b/changelog.d/fixed-footer-back-to-top-listeners.md new file mode 100644 index 00000000..f363c86d --- /dev/null +++ b/changelog.d/fixed-footer-back-to-top-listeners.md @@ -0,0 +1 @@ +- Footer back-to-top effect now removes its scroll/click listeners on unmount. diff --git a/src/__tests__/Footer.behavior.test.tsx b/src/__tests__/Footer.behavior.test.tsx index 276ce9f0..b91fc591 100644 --- a/src/__tests__/Footer.behavior.test.tsx +++ b/src/__tests__/Footer.behavior.test.tsx @@ -216,4 +216,18 @@ describe("back-to-top button", () => { fireEvent.click(button()); expect(scrollToSpy).toHaveBeenCalledWith({ top: 0, behavior: "smooth" }); }); + + it("removes scroll and click listeners on unmount", () => { + const windowRemoveSpy = vi.spyOn(window, "removeEventListener"); + const { unmount } = render(