gpt4 book ai didi

Laravel Livewire key() 期望参数 1 为数组,给定整数 |嵌套组件 |在循环中加载组件

转载 作者:行者123 更新时间:2023-12-04 01:33:21 24 4
gpt4 key购买 nike

我一直在使用 Laravel livewire一段时间以来,我有一个嵌套组件,它是我网站的产品列表,在该列表中我有另一个用于将产品添加到愿望 list 的组件。根据文档所述 here , 它说

“与 VueJs 类似,如果您在循环中渲染一个组件,Livewire 无法跟踪哪个是哪个。为了解决这个问题,livewire 提供了一种特殊的“键”语法:”

像这样:

<div>
@foreach ($users as $user)
@livewire('user-profile', $user, key($user->id))
@endforeach
</div>

这是我项目中的代码片段。

<div>
@foreach($products as $product)
<div class="product-box white-bg mb-8" data-dusk="product">
{{-- here im passing product id as param in key(), 'productList' is a static value for a variable of mount(). --}}
@livewire('desktop.wish-list-add', $product, key($product->id), 'productList')

<div class="product-content d-flex justify-content-between align-items-center p-5">
...............

@endforeach
{{ $products->links() }}
</div>

问题是当我尝试将 $product->id 作为参数传递给 key() 时,它给出了错误

key() expects parameter 1 to be array, integer given

但是文档清楚地表明我们必须将 id 作为参数传递。到目前为止有没有人遇到过这个问题?

最佳答案

@livewire('photos.photo-wire', ['photo' => $photo], key($photo->id))

代替

@livewire('photos.photo-wire', ['photo' => $photo, key($photo->id)])

因为这会产生错误:

key() 期望参数 1 为数组,整数给定

关于Laravel Livewire key() 期望参数 1 为数组,给定整数 |嵌套组件 |在循环中加载组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60446420/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com