Skip to content

خطافات دورة الحياة

كل نسخة من مكون Vue تمر بمجموعة من الخطوات الإعدادية عند إنشائها - على سبيل المثال ، يحتاج إلى إعداد مراقبة البيانات وتجميع القالب ووصل النسخة على الـDOM وتحديثه عند تغيير البيانات. على طول الطريق ، يقوم أيضًا بتشغيل الدوال المسماة خطافات دورة الحياة ، مما يمنح المستخدمين فرصة لإضافة الشيفرة الخاصة بهم في مراحل محددة.

تسجيل خطافات دورة الحياة

على سبيل المثال ، يمكن استخدام onMountedmounted لتشغيل الشيفرة بعد انتهاء التصيير الأولي للمكون وإنشاء عقد الـDOM:

vue
<script setup>
import { onMounted } from 'vue'

onMounted(() => {
  console.log(`المكون مُوصّل الآن.`)
})
</script>
js
export default {
  mounted() {
    console.log(`المكون مُوصّل الآن.`)
  }
}

يوجد أيضًا خطافات أخرى ستستدعى في مراحل مختلفة من دورة حياة النسخة ، والأكثر شيوعًا هي onMounted، onUpdated، و onUnmounted.mounted، updated، و unmounted.

كل خطافات دورة الحياة تستدعى مع سياق this الخاص بها الذي يشير إلى النسخة النشطة الحالية من المكون التي تستدعيها. تجدر الملاحظة أن هذا يعني أنه يجب عليك تجنب استخدام الدوال السهمية عند تعريف خطافات دورة الحياة، حيث لن تتمكن من الوصول إلى نسخة المكون عبر this إذا قمت ذلك.

عند استدعاء onMounted، تربط Vue تلقائيًا الدالة المسجلة مع نسخة المكون النشطة الحالية. يتطلب هذا أن تُسجل هذه الخطافات بشكل متزامن أثناء إعداد المكون. على سبيل المثال، الشيفرة الموالية غير صالحة :

js
setTimeout(() => {
  onMounted(() => {
    // هذا لن يشتغل
  })
}, 100)

جدر الملاحظة أن هذا لا يعني أن الاستدعاء يجب أن يكون موضوعًا في ()setup أو <script setup> . يمكن استدعاء ()onMounted في دالة خارجية بشرط أن تكون سلسلة الاستدعاء متزامنة وتنشأ من داخل ()setup.

الرسم البياني للخطافات

أدناه رسم بياني لدورة حياة النسخة. لا تحتاج إلى فهم كل شيء بالضبط الآن ، ولكن عندما تتعلم وتبني المزيد ، سيكون مرجعًا مفيدًا.

Component lifecycle diagram

اطلع على مرجع واجهة برمجة التطبيقات لخطافات دورة الحياةمرجع واجهة برمجة التطبيقات لخطافات دورة الحياة للحصول على تفاصيل عن جميع خطافات دورة الحياة وحالات استخدامها .

خطافات دورة الحياة has loaded