我正在使用Algolia提供的instantsearch.js库。
我想要的行为是:如果访问者没有在搜索框中输入任何内容,则不返回任何结果。
然而,Algolia的文档指出:
“如果未设置查询参数,则文本搜索将与所有对象匹配。”
是否可能改变这种行为,同时仍然使用instantsearch.js?
以下是我目前拥有的代码:
我想要的行为是:如果访问者没有在搜索框中输入任何内容,则不返回任何结果。
然而,Algolia的文档指出:
“如果未设置查询参数,则文本搜索将与所有对象匹配。”
是否可能改变这种行为,同时仍然使用instantsearch.js?
以下是我目前拥有的代码:
<script type="text/javascript" src="http://cdn.jsdelivr.net/instantsearch.js/1/instantsearch.min.js"></script>
<script type="text/javascript">
window.onload = function ()
{
function getTemplate(templateName) {
return document.getElementById(templateName + '-template').innerHTML;
}
var search = instantsearch({
appId: '{{config["ALGOLIA_APPLICATION_ID"]}}',
apiKey: '{{config["ALGOLIA_API_KEY"]}}',
indexName: '{{config["ALGOLIA_INDEX_NAME"]}}',
urlSync: true
});
search.addWidget(
instantsearch.widgets.searchBox({
container: '#search-input'
})
);
search.addWidget(
instantsearch.widgets.hits({
container: '#hits-container',
hitsPerPage: 10,
templates: {
item: getTemplate('hit'),
empty: getTemplate('no-results')
}
})
);
search.start();
};
</script>