2016-02-08 3 views
2

Я пытаюсь реализовать algolias instansearch.js. В моих результатах поиска будет много HTML, поэтому я хотел бы извлечь его в шаблон hogan. Результаты, похоже, загружаются, но ничего не отображается?Используйте шаблон hogan в виджетах instantsearch.js

<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> 

Любая помощь будет высоко ценится

ответ

1

Вам не нужно использовать Hogan самостоятельно, просто дайте нам шаблон:

вар hitTemplate = document.querySelector ('# хит-шаблон') .innerHTML;

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

Также проверьте консоль на наличие сообщений об ошибках. Спасибо

+0

Да, жаль, что все работает, я только что извлек этот виджет. – jhodgson4

+0

вы можете пометить его как разрешенное, спасибо – vvo

+0

Не разрешено? – jhodgson4