2

我正在尝试实现 algolias instansearch.js。我的搜索结果将包含大量 HTML,因此我想将其提取到 hogan 模板中。结果似乎正在加载,但没有呈现任何内容?

<script type="text/template" id="hit-template">
  {{#hits}}
  <div class="hit">
    <div class="hit-image">
      <p>test: {{ objectID }}</p>
    </div>
  </div>
  {{/hits}}
</script>

<script>
var hitTemplate = Hogan.compile($('#hit-template').text());

search.addWidget(
  instantsearch.widgets.hits({
container: '#hits-container',
templates: {
  empty: 'No results',
  item: function(data){
    return hitTemplate.render(data);
      }
    },
    hitsPerPage: 6
  })
);
</script>

任何帮助将非常感激

4

1 回答 1

1

您不需要自己使用 Hogan,只需给我们模板:

var hitTemplate = document.querySelector('#hit-template').innerHTML;

search.addWidget(
  instantsearch.widgets.hits({
    container: '#hits-container',
    templates: {
      empty: 'No results',
      item: hitTemplate
    },
    hitsPerPage: 6
  )
);

还要检查控制台是否有错误消息。谢谢

于 2016-02-09T08:56:33.323 回答