我有一个名为“SideBar”的部分需要在我的_Layout.cshtml中呈现两次。当用户在PC上时,我希望将该部分呈现为左侧边栏,但在移动设备上,我需要将该部分呈现为引导可折叠导航栏。
这使用Bootstrap 3类仅在小型和超小型设备上显示导航:
<nav class="navbar navbar-default visible-xs-block visible-sm-block" role="navigation">
<div class="container-fluid">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#mobile-navbar">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand visible-xs visible-sm" href="#">IT Tracking System</a>
</div>
<div class="collapse navbar-collapse" id="mobile-navbar">
<ul class="nav navbar-nav main-menu">
@RenderSection("SideBar")
</ul>
</div>
</div>
</nav>
对于PC用户,它应该是左侧边栏。它隐藏在小型和超小型设备上。
<div class="row">
<div class="col-md-2 left-sidebar hidden-xs hidden-sm">
<aside>
<nav class="main-nav">
<ul class="main-menu">
@RenderSection("SideBar")
</ul>
</nav>
</aside>
</div> <!-- .left-sidebar -->
<div class="col-xs-12 col-md-10 content-wrapper">
@RenderBody()
</div> <!-- .content-wrapper -->
</div>
在我看来,我有:
@section SideBar {
...
}
问题是使用相同的部分名称多次调用@RenderSection("SideBar")
。有关如何解决此问题的任何建议?