Laravel 5.1:将数据传递给 View Composer

2024-04-05

我在 Laravel 5.1 中使用视图编辑器:很好。但是如何将参数传递给视图编辑器?

就我而言,我将周信息(上周、当前、下周,包括日期)发送到我的视图中,并使用 de viewcomposer。当前星期是可变的,不仅来自 url,还来自控制器。

public function compose(View $view)
{
   // I need a parameter here (integers)
}

如果必须将参数从控制器传递到视图组合器,则可以为组合器创建一个包装类,并在需要时将数据传递给它。然后,当您完成数据设置后,您可以组成视图:

ComposerWrapper类

public function __construct(array $data)
{
    $this->data = $data;
}

public function compose()
{        
    $data = $this->data;

    View::composer('partial_name', function( $view ) use ($data) 
    {
        //here you can use your $data to compose the view
    } );
}

控制器

public function index()
{
    //get the data you need
    $data = ['first_value' = 1]; 

    //pass the data to your wapper class
    $composerWrapper = new ComposerWrapper( $data );

    //this will compose the view
    $composerWrapper->compose();

   //other code...
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Laravel 5.1:将数据传递给 View Composer 的相关文章

随机推荐