关于 @section...@show;@section....@endsection 的用法分析
经过测试,初次定义section位置的时候只能用@yield或者@section('yourSection')....@show,这样子孙模板不乱。
如果乱用,会出问题。
也就是说,你在根layout.blade.php中定义section只有两种形式:
1.使用yield占位符。但子模板不能用@parent,孙子可以。子模板继承使用@section('contents')....@endsection实现内容。孙子模板以此类推,且孙子能用@parent获取父模板的内容。但后代如果用@section...@show,会出现此后代的后代中如果再有@parent的,则@parent继承的内容显示位置正常,但如果有新的html内容,将会在模板翻译后出现在html根标签的上部,显示在页面的最顶端。这个不知道是什么原因?
2.使用@section('yourSectionName').....@show。子子孙孙都使用@section('contents')......@endsection去继承实现。
3.一句话,@section....@endsection不能做祖宗。只能继承实现section。@section...@show只能做祖宗。
另外@section()....@stop没有测试,还不知道是什么情况?
很少有模板需要三代吧