2016-06-13 17 views
2

numericRefinementListを使用して、ユーザーがアイテムを自分自身から選択できるようにしたいと考えていますか?これは、IPジオロケーション機能を使用するか、または利用可能であればブラウザからジオロケーションを入力することです。numericRefinementListを使用して許容距離を設定するにはどうすればよいですか?

  • 50キロ
  • 50未満 - 100キロ
  • 100 - これは、残念ながら、あなたがnumericRefinementListで行うことができるものではありません150キロ
  • 以上の150キロ

https://community.algolia.com/instantsearch.js/documentation/#numericrefinementlist

答えて

5

が、おそらく、linに応じてaroundRadiusを設定するカスタムウィジェットを構築することができますあなたは上でクリックしたKは

function radiusList(options) { 
    if (!options.container) { 
    throw new Error('radiusList: usage: radiusList({container, ...})'); 
    } 
    var $container = $(options.container); 
    if ($container.length === 0) { 
    throw new Error('radiusList: cannot select \'' + options.container + '\''); 
    } 

    return { 
    init: function(args) { 
     // event delegation: set the aroundRadius of the underlying link 
     $(document).on('click', '.radius-link', function(e) { 
     e.preventDefault(); 
     args.helper.setQueryParameter('aroundRadius', +$(this).data('radius')); 
     args.helper.search(); 
     }); 
    }, 

    render: function(args) { 
     // FIXME: display the list of radius links 
     var html = '<ul>'; 
     html += '<li><a href="#" data-radius="100000" class="radius-link">&lt; 100km</a></li>'; 
     html += '</ul>'; 
     $container.html(html); 
    } 
    }; 
} 

そしてあなたがそれを使用する:

search.addWidget(radiusList({container: '#my-radius-list'})); 
関連する問題