javascript - 如何检测{{#each pages}}中的页面是否为当前页面?

标签 javascript handlebars.js assemble

我才学习几天assemble我正在尝试使用部分内容创建目录。

<小时/>

toc.hbs

<ul >
{{#each  pages }}
    <li>
        <a  href ="{{assets }}/{{basename }}.html" >{{data.title }}</a >
    </li >
{{/each  }}
</ul >
<小时/>

布局.hbs

<div class="row">
    <div class="col-sm-3">
        {{> toc}}
    </div>
    <div class="col-sm-9">
        {{> body}}
    </div>
</div>
<小时/>

这工作正常,除了我想在当前页面上设置 class="active"。

问:有没有办法使用组装和 Handlebars 的内置功能轻松完成此操作?我需要使用像 ifCond 这样的助手吗? ?

最佳答案

您可以使用 {{#is}}{{/is}} block 有条件地添加样式。

<li {{#is title "Features"}}class="active"{{/is}}>
  <a href="features.html">Features</a>
</li>

如果您认为 title 不够稳定,可以对 basename 或其他字段进行比较。

关于javascript - 如何检测{{#each pages}}中的页面是否为当前页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29235424/

相关文章:

javascript - knockoutjs 自定义绑定(bind)预处理方法和 addBindingCallback?

javascript - req.user 和 Is Authenticated 始终为 false

javascript - iOS 和 javascript 库之间的 HMAC SHA-512 生成差异

javascript - 在 Ember.js 2 中获取 Handlebars 模板上的当前路线名称

requirejs - 如何在带有 RequireJS 的 Handlebars 中使用预编译的模板?

handlebars.js - 使用 Handlebars {{embedd}} 时包含哪个路径上下文

javascript - 从字符和我不想删除的字符中拆分字符串

angularjs - Angular 1.5 组件与指令 ng-transclude

javascript - 组装:如何从 json/yaml 生成页面?

json - 循环传递的 json 将部分组装为变量