相关疑难解决方法(0)

laravel livewire,如何通过单击将 id 或数据传递给另一个组件

我有两个组件 Posts 和 Post,Posts 显示帖子,通过单击图像,我想在另一个组件中显示单击的帖子的数据。

在下面发布类和组件:

组件视图:


<div class="post" x-data="{open:false}">
  @foreach($posts as $post)
    <div>
      <h1>{{ $post->name }}</h1>
      <h3>{{ $post->body }}</h3>
      <img @click="open = !open" wire:click="showPost({{ $post->id }})" src="{{ $post->image }}" alt="">
    </div>
  @endforeach


<livewireL:post>

    </div>

Run Code Online (Sandbox Code Playgroud)

组件类:

class Posts extends Component
{


  public $posts, $post;

  public function mount(){
    $this->posts = Post::all();

  }


  public function showPost($id){
    $post = Post::find($id);
    $this->post = $post;
  }

    public function render()
    {
        return view('livewire.posts');
    }
}
Run Code Online (Sandbox Code Playgroud)

这是我想在这个组件中显示点击数据的Post 组件和类,我已经尝试过 $emit 和许多文档,但没有结果。

我要呈现该数据的组件视图:


<div x-show="open">
  <h1>{{ $post->name …
Run Code Online (Sandbox Code Playgroud)

laravel laravel-livewire

8
推荐指数
1
解决办法
2万
查看次数

标签 统计

laravel ×1

laravel-livewire ×1