如何使用Handlebars中的键访问上下文对象中的值?

时间:2015-06-25 22:46:41

标签: javascript object key handlebars.js

我有一个看起来像:

的把手模板
<script id="user-template" type="text/x-handlebars-template">
  <a class="result" href="/{{github_id}}">
    <img src="{{image_url}}" />
    <span class='additional-name'>{{> highlight object=this key="github_id"}}</span>
  </a>
</script>

我的highlight部分看起来像:

<script id="highlight-search-partial" type="text/x-handlebars-template">
  {{#if object._highlightResult}}
    {{#if object._highlightResult.key}}
      {{object._highlightResult.key.value}}
    {{/if}}
  {{else}}
    {{object.key}}
  {{/if}}
</script>

这是我的javascript对象的样子:

enter image description here

渲染车把模板后,视觉上它是空的。什么都没有呈现。

关于我做错的任何想法?我正在使用车把3.0.3(最新)。

1 个答案:

答案 0 :(得分:0)

我最后编写了一个辅助手柄功能:

<span>{{highlight this "github_id"}}</span>

Handlebars.registerHelper('highlight', function(obj, field) {
    if (obj['_highlightResult']) {
      return obj['_highlightResult'][field].value;
    } else {
      return obj[field];
    }
});