问题描述
对脚本和样式表进行分组以使其可以作为一个组调用并在一个位置进行管理的最佳方法是什么?
我在剃刀页面上使用了第三方数据网格控件,为了使它们起作用,需要在页面中引用一些脚本和样式表。
我不必在我计划使用数据网格的每个页面上添加这些引用(并且在我需要为这些数据网格添加或删除脚本的任何时候都必须更新每个页面),而宁愿拥有它们所有都在另一个文件中引用,我可以直接调用该文件。 (我希望有几个控件可以做到这一点,而不仅仅是数据网格,在每个数据网格中每个控件都有自己的引用集)
我不想将它们放置在_layout文件中,因为并非每个页面实际上都需要它们,但是由于它们足够多,因此必须在有更改的任何时候更新每个页面,这很繁琐。
本来我原本是想使用Partial View,但就我所知,该部分的内容在Partial Views中不起作用。
解决方法
创建布局页面的层次结构。我们有一个具有总体html
布局的主布局页面,并链接到所有页面的通用脚本(如jquery或bootstrap)。然后有不同部分的布局页面(例如admin / support / authenticated users / etc)。
在子布局参考中,顶部和所有RenderSections
的主布局。例如,我只需要一个自定义菜单的子布局可能类似于:
@{
Layout = "_MasterLayout";
}
@RenderSection("Styles",required: false)
<!-- custom menu here -->
<div class="container body-content">
@RenderBody()
</div>
@section Scripts {
@RenderSection("Scripts",required: false)
}
另一个示例here