Middle
Vue.js'de bir bileşenin yaşam döngüsü hakkında bilgi verin.
sobes.tech yapay zeka
AI'dan gelen yanıt
Vue.js bileşeninin yaşam döngüsü, varoluşunun farklı aşamalarında çağrılan bir dizi kancadır: oluşturulmadan yok edilmesine kadar.
Ana kancalar:
-
Oluşum:
beforeCreate: Bileşen oluşturuldu, ancak veriler ve yöntemler henüz başlatılmadı.created: Bileşen oluşturuldu, veriler ve yöntemler başlatıldı, ancak DOM henüz çizilmedi.
-
Montaj:
beforeMount: Şablon derlendi, ancak bileşen henüz DOM'a eklenmedi.mounted: Bileşen DOM'a eklendi,$elaracılığıyla DOM öğelerine erişilebilir.
-
Güncelleme:
beforeUpdate: Bileşenin verileri değişti, ancak DOM henüz güncellenmedi.updated: Veri değişikliğinden sonra DOM güncellendi.
-
Kaldırma:
beforeUnmount: Bileşen DOM'dan kaldırılmak üzere. Burada zamanlayıcılar, olay dinleyicileri vb. temizlenebilir.unmounted: Bileşen DOM'dan kaldırıldı.
Ana kancalara ek olarak, hata ayıklama (Debug) ve hata yönetimi (Error Handling) için kancalar da vardır:
renderTracked: Render sırasında reaktif bağımlılıkları izler.renderTriggered: Reaktif durumu değiştiğinde bileşenin yeniden render edilmesi gerektiğinde çağrılır.errorCaptured: Çocuk bileşenlerde oluşan hataları yakalar.
// Kancaların kullanım örneği
export default {
data() {
return {
message: 'Merhaba Vue!'
};
},
beforeCreate() {
console.log('beforeCreate: Bileşen oluşturuldu, veriler ve yöntemler erişilebilir değil.');
},
created() {
console.log('created: Bileşen oluşturuldu, veriler ve yöntemler erişilebilir.');
console.log('Mesaj:', this.message);
},
beforeMount() {
console.log('beforeMount: Şablon derlendi.');
},
mounted() {
console.log('mounted: Bileşen DOM'a eklendi.');
console.log('DOM elementi:', this.$el);
},
beforeUpdate() {
console.log('beforeUpdate: Veriler değişti, DOM güncellenmedi.');
},
updated() {
console.log('updated: DOM güncellendi.');
},
beforeUnmount() {
console.log('beforeUnmount: Bileşen kaldırılıyor.');
},
unmounted() {
console.log('unmounted: Bileşen DOM'dan kaldırıldı.');
}
};