Twitter bootstrap 设置Boostrap导航项";主动的;使用Sails.js

Twitter bootstrap 设置Boostrap导航项";主动的;使用Sails.js,twitter-bootstrap,sails.js,Twitter Bootstrap,Sails.js,Boostrap可以轻松地将导航项设置为“活动”,以便用户知道他们在哪个页面()。如何从Sails.js中的导航项动态设置/删除“活动”CSS类 <ul class="navbar-nav ml-auto"> <li class="nav-item active" id="map-item"> <a class="nav-link" href="/">Map</a> </li> <li class="nav

Boostrap可以轻松地将导航项设置为“活动”,以便用户知道他们在哪个页面()。如何从Sails.js中的导航项动态设置/删除“活动”CSS类

<ul class="navbar-nav ml-auto">
  <li class="nav-item active" id="map-item">
    <a class="nav-link" href="/">Map</a>
  </li>  
  <li class="nav-item active" id="faq-item">
    <a class="nav-link" href="/faq">FAQ</a>
  </li>
  <li class="nav-item active" id="contact-item">
    <a class="nav-link" href="/contact">Contact</a>
  </li>  
</ul> 
有多种在线解决方案使用纯JavaScript或AJAX,但我不知道如何在Sails.js中实现这一点


我有一个layout.ejs文件,它定义了每个页面的总体布局,然后我有了地图、常见问题解答和联系人的ejs页面。理想情况下,如果我以后决定添加更多页面,最好只更改代码的一部分。

对于纯Sails JS解决方案,您可以执行以下操作 使用
req.path
,reference获取请求URL并将其传递到视图中。因此,例如,URL是www.sailsapp.com/faq,在控制器中使用
let a=req.path
将为您提供值为“/faq”的变量a。那么在你看来,你可以使用if-like

<li class="nav-item active" id="faq-item">
<a class="nav-link <% if (a == '/faq') {%> active <%}%>" href="/faq">FAQ</a>
</li>
  • 您可以将此逻辑用于您希望创建的任何链接