我有一个在HTML页面中创建9个块的视图。每个块可以有一个大音符(如粘滞便笺)或最多6个小音符。
在每个笔记上都有一个显示评论的选项。
因此,在视图中出现这些评论选项的代码会出现18次 - 必须有更好的方法来执行此操作,而不是让代码块出现这么多次。可能写出来的函数吗?
这是代码块:
<!-- start comments popover -->
<div class="popover-medium">
<a href="javascript:void(0)" class="icon-entypo icon-text-document btn-note trigger" data-toggle="popover" data-placement=right></a>
<div class="popover-avatar content hide">
<ul class="row popover-content border-bottom list-inline">
<li class="col-xs-9">
<span class="small clearfix"></span>
<span class="small">
@if (!empty($name->comments))
{{$name->comments}}
@else
No comments
@endif
</span>
</li>
</ul>
</div>
</div>
<!-- end comments popover -->
非常感谢任何想法/方向!
答案 0 :(得分:2)
将您的代码块添加到新的刀片文件中,例如myblock.blade.php
然后在主视图中,您可以拨打@include('myblock')
当页面呈现时,它会将@include
行替换为您的代码块。
此外,你的问题并不完全清楚。但值得注意的是,你可以这样做:
@foreach($array as $item)
@include('myblock', ['item'=>$item])
@endforeach
然后在您的代码块中引用$item
。您可能实际上不需要将$item
作为参数传递给@include
,因为我认为在页面呈现时,脚本可以使用页面中的所有变量。
注意:有些人会对刀片视图的命名约定感到困惑。如果您正在努力,请查看我对previous post的回答