اذهب إلى المحتوى
  • 0

كيفية انشاء حدث باستخدام livewire

محمود سامي حسين

السؤال

هل هذه هي الطريقة الصحيحة لعمل الحدث في livewire ؟

<!--خطأ هذا الايفينت لا يعمل علي مستوي المشروع ككل -->
<a href="#" style="margin-left:10px;" wire:click.prevent='deleteproduct({{$product->id}})'>
</a>
<!--عند االضغط علي الرابط يتم  الذهاب الي href ولا يتم تنفيذ الحدث -->
                                        

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 1

بشكل عام، الطرق الممكنة التي يمكن بها استدعاء أحداث في ليفواير هي ما كالتالي:

  • من داخل ملف العرض:
    <button wire:click="$emit('yourEventName')">

     

  • من ملف المكون:

    $this->emit('yourEventName');

     

  • من داخل سكربت جافاسكربت:

    <script>
        Livewire.emit('yourEventName')
    </script>

     

بمعنى أن استدعاءك للحدث يجب أن يكون كـ :

<button wire:click="$emit('deleteproduct', {{$product->id}})">

كأشياء جانبية أخرى، تأكد من:

  • أن الحدث deleteproduct موجود بالفعل
  • أن الحدث deleteproduct موجود كتابع للمكون المستهدف
رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 17 دقائق مضت قال محمود سامي حسين:

جربتة الفكرة في الايفنت(livewire event) نفسه وليس الزر أو الرابط 

تأكد من تطابق اسم التابع deleteproduct ضمن صنف المكون مع ذكره ضمن ملف العرض، 

أيضًا تأكد من كون تابع الحدث public كالتالي:

class MyComponent extends Component {

  public function deleteproduct($product_id) {
  ^^^^^^ ...
  }
}

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...