Blazor - دورة حياة الـ Component (Lifecycle Methods)
Blazor Server - دورة حياة الـ Component (Lifecycle Methods)
في Blazor، لكل مكون (Component) دورة حياة (Lifecycle) تتضمن عدة مراحل يتم فيها تنفيذ أحداث معينة مثل: التهيئة، التحديث، الحذف.
🔹 أهم دوال دورة الحياة (Lifecycle Methods):
- OnInitialized: يتم استدعاؤها عند تهيئة المكون لأول مرة.
- OnInitializedAsync: نسخة غير متزامنة (Async) من OnInitialized.
- OnParametersSet: يتم استدعاؤها عند تعيين القيم للـ Parameters الخاصة بالمكون.
- OnParametersSetAsync: النسخة غير المتزامنة.
- OnAfterRender: يتم استدعاؤها بعد أن يتم عرض المكون لأول مرة أو بعد كل تحديث.
- OnAfterRenderAsync: النسخة غير المتزامنة.
- Dispose: يتم استدعاؤها عند التخلص من المكون (Cleanup Resources).
🔹 مثال عملي:
// ملف LifecycleExample.razor
<h3>Lifecycle Example</h3>
@code {
protected override void OnInitialized()
{
Console.WriteLine("تم استدعاء OnInitialized");
}
protected override async Task OnInitializedAsync()
{
Console.WriteLine("تم استدعاء OnInitializedAsync");
await Task.Delay(1000);
}
protected override void OnParametersSet()
{
Console.WriteLine("تم استدعاء OnParametersSet");
}
protected override async Task OnAfterRenderAsync(bool firstRender)
{
if (firstRender)
{
Console.WriteLine("تم استدعاء OnAfterRenderAsync لأول مرة");
}
}
public void Dispose()
{
Console.WriteLine("تم استدعاء Dispose للتنظيف");
}
}
🔹 ملاحظات مهمة:
- firstRender داخل
OnAfterRenderAsyncيسمح لك بالتمييز بين العرض الأولي والتحديثات اللاحقة. - من الأفضل تنفيذ الأعمال الثقيلة مثل جلب البيانات داخل
OnInitializedAsyncوليسOnInitialized.
✅ فهم دورة الحياة ضروري لبناء مكونات Blazor قوية وفعالة.
تعليقات
إرسال تعليق