Laravel Blade组件插槽传递带变量的列时提示$item未定义的问题解决问询
Laravel Blade组件插槽传递带变量的列时提示$item未定义的问题解决问询
大家好,我正在用Laravel Blade组件开发一个可复用的动态表格,目标是让其他开发者能传入自定义表头和对应的数据行,用来展示权限、评论等各种不同类型的表格数据,但目前遇到了变量传递的问题,麻烦帮忙看看怎么解决~
我在视图里是这样使用这个组件的:
<x-admin.data-table :items="$review" route="admin/users"> <x-slot:header> <th>Name</th> <th>Description</th> </x-slot> <x-slot:row :item="$item"> <td>{{$item->name}}</td> <td>{{$item->description}}</td> </x-slot:row> </x-admin.data-table>
在data-table.blade.php组件文件中,我是这样渲染行插槽的:
<tbody> @foreach ($items as $item) <tr> {{ $row(['item' => $item]) }} </tr> @endforeach </tbody>
原本的设计是,使用者可以通过<x-slot:row>这个插槽自定义每一行的内容,比如换成<td>{{$item->content}}</td>这样的自定义列。但实际运行时却报错:Undefined variable $item。
我还尝试过用{{ $row->with(['item' => $item]) }}来传递变量,结果还是不行。
想请教一下,我到底该怎么把变量正确传递给插槽,让使用者能在插槽里正常使用$item变量呢?
内容来源于stack exchange
相关产品推荐
相关产品推荐

