我一直在尝试在我的项目中定义一个全局变量(laravel 7)。我需要这个变量在所有视图中都可用,但我得到了以下错误:
$count is undefined
Make the variable optional in the blade template. Replace {{ $count }} with {{ $count ?? '' }}
第一步,我创建了一个新的服务提供商TestSeriviceProvider
第二步,我将以下代码行添加到congif\app.php
App\Providers\TestServiceProvider::class,
然后我将以下代码写入到TestServiceProvider
的boot
方法中
public function boot()
{
View::composer('*', function ($view) {
$view->with('count', 333);
});
}
我哪里弄错了?
发布于 2020-06-06 17:38:33
这可以在AppServiceProvider
的boot()
方法中完成。
只需添加view()->share('count', 333);
,即可在任何刀片式服务器页面上访问您的$count
。如果您实现了许多共享数据,是的,您可以为此创建一个单独的ServiceProvider。但请记住,您的共享数据可能会在控制器中被覆盖。
根据您希望这样做的原因,您可以研究中间件和session()
帮助器的组合,或者将共享变量组合到一个数组中。
https://stackoverflow.com/questions/62222407
复制相似问题