实际上,我的layout.ejs代码如下所示:
<!-- begin:: Page -->
<div class="m-page">
<%- partial('./partials/topnav.ejs') %>
<!-- begin::Body -->
<div class="m-body">
<%- partial('./partials/leftnav.ejs') %>
<div class="m-wrapper">
<%- body %>
</div>
</div>
<!-- end:: Body -->
<%- partial('./partials/footer.ejs') %>
</div>
<!-- end:: Page -->
<%- partial('./partials/side.ejs') %>
我想在导航栏和正文中使用不同的控制器,所以我将视图分开。
现在我希望登录页面不同(根本没有导航栏)。我试图用ng-show隐藏导航栏,但它闪烁,我试图阻止那个闪烁,但我仍然看到左栏几秒钟,这真的很烦。
因此,如果页面的位置为/ login,我想尝试仅显示正文。我不能使用控制器,因为已经用于导航栏和主体部分的控制器会发生冲突。
我想使用这样的东西:
<script type="text/javascript">
var path = this.window.location.pathname;
</script>
...
<% if (path == '/login') { %>
<%- body %>
<% } else{ %>
..the previous code..
<% } %>
但是这个路径没有定义&#34;错误。 所以我四处寻找有关EJS if语句的信息,但最好总是落在其他条件下。
答案 0 :(得分:1)
您需要定义一个path
变量,其中包含您需要的正确值。
因此,在相应的控制器中创建它并将其传递给您的视图,如下所示:
res.view(pathToYourView, { path: yourPath, ... });