首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >怪异的Livewire + Turbolinks行为

怪异的Livewire + Turbolinks行为
EN

Stack Overflow用户
提问于 2021-05-05 19:47:14
回答 1查看 624关注 0票数 1

我在TALL (Laravel 7) + Turbolinks构建一个管理面板。其中一节只包含一个Livewire组件,它显示了一个Product元素的分页表和一个搜索字段(在此之前,我所做的唯一“奇怪”事情是将Market模型实例注入到中间件中的请求中)。

当我进入/products路由时,问题就出现了,在那里,livewire组件包含什么都不起作用.第一页的记录是很好的,但是分页链接死了,搜索字段什么也不做,没有控制台错误,没有直播错误,就好像javascript根本不起作用一样,最奇怪的事情是:如果我重新加载页面,那么我加载到中间件中的Market 数据就会被添加到查询字符串中,并且一切都以预期的方式开始工作。

中间件:

代码语言:javascript
运行
复制
public function handle($request, Closure $next) {
    $market = Market::findOrFail(session('selected_market'));
    $request->request->add(['market' => $market]);
    return $next($request);
}

带电组件:

代码语言:javascript
运行
复制
class ProductsTable extends Component{
    use WithPagination;

    public $search = '';
    protected $queryString = [
        'search' => ['except' => ''],
        'page' => ['except' => 1],
    ];

    public function render(){
        $products = Product::where('market_id', request('market')->id)
        ->when($this->search !== '', function($query) {
            $query->where('name', 'like', "%{$this->search}%");
            $query->orWhere('brand', 'like', "%{$this->search}%");
        })->paginate(15);

        return view('livewire.products-table', ['products' => $products]);
    }
}

带电组件视图:

代码语言:javascript
运行
复制
<input wire:model.debounce.500ms="search" type="search" name="search" id="search">

<table>
    @forelse($products as $product)
        <tr onclick="Turbolinks.visit('{{ route('product', $product->id) }}')">
            <td>{{ $product->name }}</td>
            ...
        </tr>
    @empty
        <tr><td>Nothing to show for {{ $search }}</td></tr>
    @endforelse
</table>

{{ $products->links() }}

我对此感到困惑和厌倦,我不知道发生了什么,类似的问题也没有得到明确的回答。

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-05-06 13:59:33

解决方案非常简单,只需将其添加到脚本中:

代码语言:javascript
运行
复制
document.addEventListener("turbolinks:load", function(event) {
  window.livewire.restart();
});
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67407859

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档