Të dyja krijojnë gjendje reaktive në Composition API, por funksionojnë ndryshe. ref mbështjell çdo vlerë (përfshirë primitivat) në një kontejner reaktiv; reactive e bën një objekt thellësisht reaktiv drejtpërdrejt.
Të dyja krijojnë gjendje reaktive në Composition API, por funksionojnë ndryshe. ref mbështjell çdo vlerë (përfshirë primitivat) në një kontejner reaktiv; reactive e bën një objekt thellësisht reaktiv drejtpërdrejt.
<script setup>
import { ref } from "vue";
const count = ref(0); // wraps a primitive
const user = ref({ name: "Ann" });
function inc() {
count.value++; // ⚠️ in SCRIPT you must use .value
user.value.name = "Bob";
}
</script>
<template>
<p>{{ count }}</p> <!-- ✅ in TEMPLATE, .value is auto-unwrapped -->
</template>
Një veçori kryesore: në JavaScript ju aksesoni ref përmes .value; në template Vue e paqëson atë automatikisht. Harrimi i .value në skript është gabimi më i zakonshëm për fillestarët.
<script setup>
import { reactive } from "vue";
const state = reactive({ count: 0, user: { name: "Ann" } });
state.count++; // ✅ access directly, no .value
state.user.name = "Bob"; // deeply reactive
</script>
reactive funksionon vetëm në objekte/vektorë (jo në primitive) dhe ju përdorni vetitë drejtpërdrejt.
let state = reactive({ count: 0 });
state = { count: 5 }; // ❌ breaks reactivity (lost the reactive proxy)
const { count } = state; // ❌ destructuring loses reactivity
Ribashkënimi i një objekti reactive ose dekompozimi i vetive të tij shkëput ato nga reaktiviteti — një gotche i shpeshtë. ref nuk ka këtë problem (ju ribashkënisni .value).
ref → primitives, and the recommended default (works for everything, easy to reassign)
reactive→ when you want a grouped object of state without .value (but mind destructuring)
Mnë ekipa standardizojnë ref kudo për konsistencë.
ref dhe reactive janë themeli i gjendjeve reaktive të Composition API në Vue 3.
Kuptimi se ref ka nevojë për .value në skript (i paqësuar automatikisht në template) dhe se reactive humbet reaktivitetin në ribashkim/dekompozim parandalon dy gabimet më të zakonshme të reaktivitetit në Vue.