سلام ..
یه نگاهی به مثال زیر بندازید:
showPost.blade.php:
<div>
<livewire:content-box :content="$post"/>
<button wire:click="nextPost" >Next Post >></button>
</div>
و
content-box.blade.php :
<div>
<h1>{{ $content->title }}</h1>
<p>{{ $content->content }}</p>
</div>
تا اینجا کامل مشخصه که قراره چه اتفاقی بیوفته ... : اول اطلاعات مطلب مورد نطر از طریق showPost دریافت و به contentBox پاس داده میشه و همه چیز اوکی..
خب حالا من میخوام از طریق دکمه ای که قرار دادم و صدا زدن متد nextPost اطلاعات مطلب بعدی از طریق الاکونت دریافت بشه :
showPost.php :
class ShowPost extends Component
{
public Post $post;
public function render()
{
return view('livewire.show-post');
}
public function nextPost()
{
$id = $this->post->id;
$nextPost = Post::where('id', '>', $id)->first();
$this->post = $nextPost;
}
...
ولی اتفاقی نمی افتد و کامپوننت contentBox هیچ ری اکشنی ندارد .... کسی به این مشکل خورده؟؟؟!
اینم بگم که نمیخوام از ایونت ها استفاده کنم برای این کار ...
نسخه لاراول هم قبلا ۷ بوده که به ۸ آپدیتش کردم.
ممنون از همه خودم جوابشو پیدا کردم .
یادتون باشه هرجا کامپوننتی رو صدا زدید که نیاز به بروز شدن با رویداد های مختلف داشت ، پراپرتی key رو هم مقدار دهی کنید:
<livewire:content-box :post="$post" :key="$post->id"/>
سلام منم دقیقا چنین مشکلی دارم و key هم ست کردم اما مشکل برطرف نشد.
لطفا بیشتر راهنمایی کن.
متشکرم
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟