Laravel View Composer变量传递失败,触发未定义变量错误求助
Laravel View Composer 变量未定义问题解决方案
问题根源及修复步骤:
修正服务提供者类名不匹配问题
你的服务提供者实际类名为SidebarServiceProvider,但在config/app.php的providers数组中注册的是SidebarComposerServiceProvider,类名不一致会导致Laravel无法加载该服务提供者,View Composer逻辑完全没执行。
将配置中的类名修改为正确的:App\Providers\SidebarServiceProvider::class,修正模板变量名错误
在View Composer代码里,你通过$view->with()传递到模板的变量名是green和blue,但你在模板中尝试遍历的是$dataGreen,变量名不匹配导致未定义错误。
模板中需使用正确的变量名:{{-- 遍历 green 数据 --}} @foreach($green as $item) {{ $item->字段名 }} @endforeach {{-- 遍历 blue 数据 --}} @foreach($blue as $item) {{ $item->字段名 }} @endforeach清除配置缓存(可选但推荐)
若之前执行过配置缓存命令,需清除缓存让新的服务提供者生效:php artisan config:clear
内容的提问来源于stack exchange,提问作者Itamar Campos
相关产品推荐
相关产品推荐

