2017-02-26 1 views
1

J'utilise la recherche instantanée par algolia et j'ai besoin d'afficher une superposition chaque fois qu'il y a un résultat. Je veux donc le gérer via la fonction onSearchStateChange fournie par algolia. mais je suis toujours perplexe de savoir où obtenir le total des hits. J'ai déjà une idée qui est très rapide comme utiliser les résultats affichés dans le en extrayant les numéros via jquery. mais je ne veux pas le faire. Y a-t-il une autre façon de suggérer?Réagir InstantSearch: onSearchStateChange obtenir le nombre de résultats retournés

onSearchStateChange(nextState) { 

    //must get the number of total hits. 

    nextState = cleanDeep(nextState); 
    let filters = transformer(nextState); 
    this.setState({ 
     searchState: nextState, 
     filters: filters, 
     searchChanged: true 
    }) 
    this.sendToAti(filters); 

    this.addOverlay(); // <--- function that will show the overlay. 

    location.hash = qs.stringify(nextState); 
} 

Répondre

3

La fonction onSearchStateChange ne contient pas l'objet searchResults où vous pouvez trouver le nombre de hits.

Cependant, nous fournissons un widget <Stats> et un connecteur connectStats qui contiennent cette information. Peut-être pourriez-vous l'utiliser?