刀片 - 如何将元素附加到刀片模板中的堆栈开头?

时间:2016-06-11 16:20:23

标签: laravel laravel-5 blade

在刀片服务器中,您可以创建堆栈。有关更多信息,请参阅以下内容:

https://laravel.com/docs/5.2/blade#stacks

但是,上面的链接仅显示了如何将元素推送到堆栈的末尾。 我想在堆栈的开头附加一个元素。我怎么能这样做?

e.g。

@push('foo')pizza @endpush
@push('foo')like @endpush
@push('foo')I @endpush
@stack('foo')

输出:

pizza like I

我希望它输出:

I like pizza

1 个答案:

答案 0 :(得分:1)

这是我不建议做的事情,因为这是Laravel的构建方式。

但是,如果出于任何原因,您需要它,并且您没有看到任何其他方法来实现它,您可以调整框架本身。

文件Factory.php位于Illuminate\View。在那里你有一个名为extendPush()的函数,你可以改变"追加"替换线的方法:

$this->pushes[$section][$this->renderCount] .= $content;

用这个:

$this->pushes[$section][$this->renderCount] = $content . $this->pushes[$section][$this->renderCount];

在最后的其他声明中。

同样,我不建议调整框架,但如果它对您的项目重要,那么这就是我能提供的。