diff --git a/ui/src/client.tsx b/ui/src/client.tsx index 096d57cf..c6783110 100644 --- a/ui/src/client.tsx +++ b/ui/src/client.tsx @@ -1,5 +1,5 @@ import { StartClient } from "@tanstack/react-start/client" -import { StrictMode, useState } from "react" +import { StrictMode, useEffect, useState } from "react" import { hydrateRoot } from "react-dom/client" import { registerSW } from "virtual:pwa-register" @@ -15,14 +15,15 @@ function PwaUpdateProvider() { const [needRefresh, setNeedRefresh] = useState(false) const [updateSW, setUpdateSW] = useState<(() => Promise) | undefined>(undefined) - if (import.meta.env.PROD) { + useEffect(() => { + if (!import.meta.env.PROD) return const updateSWRef = registerSW({ onNeedRefresh() { setNeedRefresh(true) }, }) setUpdateSW(() => updateSWRef) - } + }, []) return (