user1934044
user1934044

Reputation: 516

Meteor easy search and iron-router

I'm using this easy serach for my project https://github.com/matteodem/meteor-easy-search

my search Index

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;
    }
});

and now I have search box and when User enters something and click on enter I want to route to search page

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(){

      }
    });

In this router I want the searchIndex data to be sent to search page, how to do this

my click event

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

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

UPDATE

My main question is in the router waiton function how we get the data in callback and send it to the search page?

Upvotes: 2

Views: 597

Answers (1)

hmslydia
hmslydia

Reputation: 195

In your click event handler, you have commented out the line: Router.go('search').

If you write

Router.go('search', {slug: quer})

That would route you to the search page with the query data collected from the page, if that is what you want.

Upvotes: 2

Related Questions