小编ali*_*ali的帖子

队列作业完成后如何刷新组件?

我有一张桌子productsjob_statuses使用这个包:laravel-job-status

队列作业完成后,有一个job_statuses名为statuspackage made this column 的列finished

所以我在products表中创建了一个名为job_status_id(relation with job_statuses)的列,只是为了将作业状态 ID 保存在产品表中,以查看此作业是否完成!

简单地,我创建了一个组件,Livewire用于在作业完成后刷新组件时刷新单个产品:

class ProductIndex extends Component
{
    public $product;


    public function mount($product)
    {
        $this->product = $product;
    }

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

内部product-index组件:

@if ($product->job_status->status == 'finished')
  // show real image? 
@else
  // show loader 
@endif
Run Code Online (Sandbox Code Playgroud)

我的刀片:

@foreach ($products as $product)
  <livewire:merchant.product.product-index :product="$product" :key="$product->id">
@endforeach
Run Code Online (Sandbox Code Playgroud)

如果状态已完成,如何刷新产品组件?

php laravel laravel-livewire

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

标签 统计

laravel ×1

laravel-livewire ×1

php ×1