2013-09-23 27 views
9

Ho ngView con tre visualizzazioni ngIncluded: filtri di ricerca, prodotti, impaginazione. Voglio:Pulsante Indietro quando reloadOnSearch: false

  1. prodotti di filtro senza ricaricare l'intera pagina solo prodotti vedi
  2. aggiungere filtri per l'url per esempio. ?category=shoes
  3. essere in grado di utilizzare di nuovo e prossimo pulsanti

ho impostato reloadOnSearch: false in $routeProvier.when. Ora quando invoco la funzione $location.search(), l'URL cambia, ma la pagina non viene ricaricata. Questo è quello che volevo ottenere, ma quando faccio clic sul pulsante indietro i prodotti non si ricaricano al suo stato precedente. L'unica cosa che succede è un cambio di URL. La domanda è: come posso gestire gli eventi back e next button in questa situazione?

risposta

11

Se si esegue nuovamente la ricerca: false, viene utilizzata la stessa istanza del controller e qualsiasi backward non ricarica alcun controller o vista correlata. È necessario rispondere all'evento $routeUpdate che viene generato in tali scenari. Vedi $ route documentation a riguardo.

$scope.$on('$routeUpdate',function(e) { 
    // Code to handle the route change. 
}); 
0

È necessario gestire tutto manualmente. Significa che quando premi la parte posteriore o il pulsante successivo devi tornare allo stato in cui utilizzi la posizione $.

Problemi correlati