Laravel 5.app.blade.hp:BaseController或ViewComposers中的动态数据


Laravel 5. Dynamic data in app.blade.php: BaseController or ViewComposers?

我在app.blade.php中有包装布局,我需要它的动态数据,比如说每个视图顶部显示的类别列表。

遵循最佳实践,你会在Laravel 5中做什么?

  1. 要创建一个新的服务提供程序来加载一个新视图生成器,并在compose()方法中为视图设置动态数据(作为一个新手,这看起来像是为这种常见的东西做了很多工作)

  2. 要创建BaseController,请设置视图的动态数据,并使我的应用程序中的每个控制器都能扩展它。

我想这是一个非常常见的场景,例如,想象一下app.blade.php中的<h1>{{ pageTitle }}</h1>,它需要在每个控制器上设置。但到目前为止,我找不到正确的方法。

简单的方法就是使用

view()->share('title', "My Page");

这适用于routes.php和其他几个文件。

不过,使用视图编辑器也是一个不错的选择。