是否建议在 Laravel Blade 中为模态、drop-downs 等制作一般偏音?

Is it recommended to make general partials for modals, drop-downs etc in Laravel Blade?

我正在寻找一种非常通用的方法来在我的 blade 视图中包含 bootstrap 组件。例如,假设我需要在我的视图中下拉,我是否应该使用如下代码创建一个名为 dropdown.blade.php 的部分:

<div class="dropdown">
      <a href="#" class="dropdown-toggle" type="button" data-toggle="dropdown">
      <span class="glyphicon glyphicon-chevron-down"></span></a>
      <ul class="dropdown-menu">
        @foreach ($options as $option)
        <li><a href="{{$option["href"]}}">{{$option["name"]}}</a></li>
        @endforeach
      </ul>
</div>

并按以下方式在我的视图中使用它:

  @include('partials.dropdown', 
          array("options"=>array(
          ["href"=>"#", "name"=>"Profile"],
          ["href"=>"#", "name"=>"Report"],
          )))

我们甚至可以通过添加按钮名称等选项使其更通用。这样做是一种好方法还是更好的方法,还是我们应该使用 bootstrap 网站的 copy-paste 方法来查看我们的视图每次?有没有做这种工作的包?我们可以用更优雅的方式来做吗?

如果您要经常 re-use 该组件,这似乎是个好主意。我认为更优雅的方法是创建自定义 blade 指令:

https://laravel.com/docs/master/blade#extending-blade

然后你可以这样做,例如:

@dropdown($options, 'btn-primary')

我还会为自定义元素 ID 或名称提供参数,以便您可以根据需要在页面的其他位置引用它。

使用模态框之类的东西会变得有点复杂。我想你会想注册多个 blade 指令,这样你就可以做类似

的事情
@startmodal
@modaltitle('Title')
@startmodalbody

    Some body content

@endmodalbody
@endmodal