Data Binding yra pagrindinė Vue.js funkcija, leidžianti užmegzti ryšį tarp programos duomenų ir vartotojo sąsajos. Tai leidžia dinamiškai atnaujinti ir sinchronizuoti duomenis tarp modelio ir rodinio, užtikrinant sklandžią ir reaktyvią vartotojo patirtį.
„Vue.js“ yra kelių tipų data binding:
1. Interpolation
Interpolation Vue.js leidžia įterpti išraiškas į dvigubus garbanotus {{ }}
šablono skliaustus.
Pavyzdys:
<div>
<p>{{ message }}</p>
</div>
Aukščiau pateiktame pavyzdyje message
yra komponento duomenų savybė. Pasikeitus vertei message
, žymos turinys <p>
bus automatiškai atnaujintas.
2. One-Way Binding
One-Way Binding leidžia susieti duomenis iš komponento duomenų nuosavybės su vartotojo sąsaja. Bet kokie duomenų nuosavybės pakeitimai atsispindės vartotojo sąsajoje, bet ne atvirkščiai. Pavyzdys:
<div>
<p>{{ message }}</p>
<button @click="updateMessage">Update</button>
</div>
data() {
return {
message: 'Hello Vue.js'
};
},
methods: {
updateMessage() {
this.message = 'Updated message';
}
}
Spustelėjus mygtuką „Atnaujinti“, reikšmė message
pasikeis ir bus rodoma vartotojo sąsajoje.
3. Two-Way Binding
Two-Way Binding leidžia sinchronizuoti duomenis tarp modelio ir vartotojo sąsajos. Pasikeitus duomenims modelyje arba vartotojo sąsajoje, abu bus automatiškai atnaujinami.
Pavyzdys:
<div>
<input v-model="message" type="text">
<p>{{ message }}</p>
</div>
data() {
return {
message: 'Hello Vue.js'
};
}
Aukščiau pateiktame pavyzdyje įvestyje įvesta reikšmė bus atnaujinta į kintamąjį message
ir atvirkščiai, message
pasikeitus, bus atnaujinta ir įvesties reikšmė.
4. Computed Properties
Apskaičiuotos ypatybės leidžia apskaičiuoti reikšmes pagal kitas komponento duomenų ypatybes.
Pavyzdys:
<div>
<p>Full Name: {{ fullName }}</p>
</div>
data() {
return {
firstName: 'John',
lastName: 'Doe'
};
},
computed: {
fullName() {
return this.firstName + ' ' + this.lastName;
}
}
Aukščiau pateiktame pavyzdyje fullName
yra apskaičiuota savybė, apskaičiuota iš firstName
ir lastName
. Kai firstName
arba lastName
pasikeis, fullName
taip pat bus atnaujinta.
5. Watchers:
Watchers leidžia stebėti konkrečius duomenų savybių pokyčius ir atlikti asinchroninius arba sudėtingus veiksmus, kai įvyksta pakeitimas.
Pavyzdys:
<div>
<p>Count: {{ count }}</p>
</div>
data() {
return {
count: 0
};
},
watch: {
count(newValue, oldValue) {
// Perform action when count changes
console.log('Count changed:', newValue, oldValue);
}
}
Aukščiau pateiktame pavyzdyje, kai pasikeičia vertė count
, stebėtojas bus suaktyvintas ir atliks atitinkamą veiksmą.
Naudodami šiuos Data Binding metodus galite pasinaudoti Vue.js lankstumu, kad lengvai ir efektyviai valdytumėte ir sinchronizuodami duomenis tarp modelio ir vartotojo sąsajos.
Naudodami šiuos data binding metodus savo Vue.js programose galite sukurti dinamines ir interaktyvias vartotojo sąsajas. Vue.js suteikia galingą ir lanksčią data binding sistemą, kuri supaprastina duomenų tvarkymo ir atnaujinimo procesą. Išnagrinėkime kiekvieną iš šių data binding metodų ir pažiūrėkime, kaip juos galima įgyvendinti jūsų Vue.js projektuose.