أعمالي ابنِ مشروع SaaS المقالات
لايف واير

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

February 01, 2026 1 دقيقة قراءة 53 مشاهدة

مكونات Livewire v4 لديها خطافات دورة حياة تعمل في أوقات محددة.

مثال دورة حياة كامل

class UserProfile extends Component
{
    public User $user;
    public string $name;
    public string $email;
    
    // يعمل مرة واحدة عند إنشاء المكون
    public function mount(User $user): void
    {
        $this->user = $user;
        $this->name = $user->name;
        $this->email = $user->email;
    }
    
    // يعمل في كل طلب (قبل الترطيب)
    public function boot(): void
    {
        // جيد لفحوصات التفويض
        if (!auth()->user()->can('view', $this->user)) {
            abort(403);
        }
    }
    
    // يعمل بعد ترطيب المكون من الحالة
    public function hydrate(): void
    {
        // إعادة تهيئة البيانات غير المحفوظة
    }
    
    // يعمل قبل تحديث خاصية محددة
    public function updatingName($value): void
    {
        $this->name = trim($value);
    }
    
    // يعمل بعد تحديث خاصية محددة
    public function updatedName($value): void
    {
        $this->validate(['name' => 'required|min:2']);
    }
    
    // يعمل قبل تحديث أي خاصية
    public function updating($property, $value): void
    {
        logger("تحديث {$property} إلى {$value}");
    }
    
    // يعمل بعد تحديث أي خاصية
    public function updated($property, $value): void
    {
        logger("تم تحديث {$property} إلى {$value}");
    }
    
    public function render(): View
    {
        return view('livewire.user-profile');
    }
}
شارك هذه المقالة:

مقالات ذات صلة

التعليقات (0)

يرجى تسجيل الدخول لترك تعليق. تسجيل الدخول

لا توجد تعليقات بعد. كن أول من يعلق!