Beide voeren side effects uit als reactie op reactieve veranderingen, maar ze verschillen in hoe dependencies worden gespecificeerd en welke informatie ze je geven. Gebruik ze voor side effects (API-aanroepen, logging, handmatig DOM-werk) — niet voor het afleiden van waarden (daarvoor is computed).
watch — expliciete bron, geeft oude + nieuwe waarden
<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>
