- _nosay
向laravel公共模板中传值
2017-09-15 09:55:43
在许多场景中,网页的一块区域必定会在很多页面中复用,比如说头部和尾部。
所以我们需要把这些公用的区域提出来,变成一个单独的模块,然后我们就可以@include或@extends啦
但是,如果我们需要对这些公用的模板传值应该怎么办呢?
不可能每个controller的function中都传一次吧,那样显得太笨了。
而laravel似乎给我们提供了一个比较便捷的方法,特此记录一下
我们找到app/Providers/AppServiceProvider.php文件,在boot方法中写入
$redis = new RedisRepository(); view()->composer(['layouts.front.main_header','layouts.front.main_header2','layouts.front.main_footer'], function ($view) use ($redis) { if(is_null($redis->getCacheByName('systemInfo'))) { $systemInfo = (new SystemRepository())->getSystemById(); $redis->setCacheByName('systemInfo',$systemInfo); }else{ $systemInfo = $redis->getCacheByName('systemInfo'); } $view->with('systemInfo',$systemInfo); });
就实现了单独对这些公用的模板传值的问题,特此记录一下