流量热赞

laravel 公共模板变量共享问题

2022-10-07  本文已影响0人  追梦人在路上不断追寻

我们都知道在laravel中,默认的模板是blade,这是一款非常不错的php模板引擎。在模板中,对于公共头部,公共尾部我们一般是单独提取出来的,这样所有的页面都可以共用这些模板。

对于公共模板如何赋值,这是我们接下来需要介绍的。

在laravel中,对于公共模板变量赋值,我们一般都是通过 ServiceProvider 来提供的。

对于 laravel 里的服务、第三方包的服务,都是通过继承 ServiceProvider实现的,ServiceProvider是一个抽象类,通过继承这个抽象类,我们的服务就集成到 laravel 中了。

创建ServiceProvider

php artisan make:provider CommonviewServiceProvider

 'providers' => [
        App\Providers\EventServiceProvider::class,
        App\Providers\RouteServiceProvider::class,
        App\Providers\CommonviewServiceProvider::class,
]

赋值公共模板变量

在 ServiceProvider boot 方法中,对变量进行赋值。

view()->composer('public.header', function($view){
            $infos = Info::all();//调用Info Model 类,获取所有数据
            $view->with('infos ', $infos );//逗号分隔,前面表示模板变量key,后面是它的值。
        }); 
上一篇 下一篇

猜你喜欢

热点阅读