useCookie — SSR-compatible cookies. localStorage — client-only.
useCookie:
1<script setup>2const theme = useCookie("theme", {3 default: () => "light",4 maxAge: 60 * 60 * 24 * 3655})67// Update8theme.value = "dark"9</script>
localStorage:
1// Client-only2if (process.client) {3 localStorage.setItem("theme", "dark")4 const theme = localStorage.getItem("theme")5}
Key differences: