Begge kjører bivirkninger som svar på reaktive endringer, men de skiller seg i hvordan avhengigheter spesifiseres og hva slags informasjon de gir deg. Bruk dem for bivirkninger (API-kall, logging, manuelt DOM-arbeid) — ikke for å utlede verdier (det er computed).
watch — eksplisitt kilde, gir gamle + nye verdier
<script setup>
import { ref, watch } from "vue";
const searchQuery = ref("");
watch(searchQuery, (newVal, oldVal) => {
// runs ONLY when searchQuery changes; you get both values
console.log(`changed from ${oldVal} to ${newVal}`);
fetchResults(newVal);
});
</script>
