2014-09-29 3 views
2

Я использую этот легкий SERACH для моего проекта https://github.com/matteodem/meteor-easy-searchМетеор легкий поиск и железо-маршрутизатор

мой индекс поиска

EasySearch.createSearchIndex('searchIndex', { 
    'collection' : blog,    
    'field'   : ['title', 'tags'],  
    'limit'   : 20,     
    "use":"mongo-db", 
    'query' : function (searchString) { 
     // Default query that will be used for searching 
     var query = EasySearch.getSearcher(this.use).defaultQuery(this, searchString); 
     return query; 
    } 
}); 

и теперь у меня есть окно поиска и когда пользователь вводит что-то и нажмите войти Я хочу, чтобы маршрут на страницу поиска

this.route("search",{ 
     path:'/search/:slug', 
     waitOn:function(){ 
      //here I want the search data to be sent to search page 
      var query=this.params.slug; 
      EasySearch.search('searchIndex', query, function (err, data) { 
       console.log(data); 
     }); 
     }, 
     data:function(){ 

     } 
    }); 

в этом маршрутизаторе я хочу данные searchIndex для отправки на страницу поиска, как сделать это

мой щелчок событие

'submit .search':function(e){ 
     e.preventDefault(); 

     var quer=$("#query").val(); 
    // Router.go('search'); 
    } 

UPDATE

Мой главный вопрос заключается в функции waiton маршрутизатора, как мы получаем данные в обратный вызов и отправить его на страницу поиска?

+0

Вам нужно будет использовать API-интерфейс компонента для обратного вызова. В приведенных примерах приведены краткие приведенные примеры: «Получить значения компонентов» + «поиск с помощью значений компонентов». Это то, что вам нужно. Он встроен, поэтому вам не нужно строить с нуля. – Thinkerer

ответ

2

В обработчике событий click вы прокомментировали строку: Router.go ('search').

Если вы пишете

Router.go ('поиск', {пробкового: Quer})

Что бы путь вы к поисковой странице с данными запроса, собранных со страницы, если это то, что вы хотите.

+0

Спасибо за ответ, моя настоящая проблема не в этом, проверка обновленного вопроса – user1934044

+0

Я не использовал EasySearch, но у меня есть предположение. waitOn обычно используется для ожидания подписки на данные. Внутри функции данных вы можете вызвать: EasySearch.search ... – hmslydia

Смежные вопросы