2014-09-05 12 views
8

Ich habe eine router view mit reloadOnSearch: false.
ist es eine Suche Seite.
, wenn ich ohne Suchparameter eingeben versuchen, einige Vorgaben zu setzen:
wie: bei der Eingabe: #/search
gesetzt i defaults pars: #/search?currpage=1&pagesize=20
$location.search({currpage:1,pagesize:20}) die Arbeit erledigt mit, aber ich erhalte auch die neue URL gedrückt die Geschichte, die wie erwartet ist, aber in diesem speziellen Fall bremst es die Logik des Navigationsflusses (Klick zurück Knopf erhält #/search und setzt wieder Standardwerte und schiebt)
gibt es einen Weg ersetzen die Suchzeichenfolge verhindert die Geschichte schieben?

Antwort

17

Haben Sie versucht, die dedizierte Methode replace() zu verwenden? Es verhindert eine Geschichte Datensatz hinzufügen:

$location.search({currpage:1,pagesize:20}).replace() 

nie benutzt es nach einem $location.search() aber es funktioniert auf jeden Fall auf $location.path()

+1

Das ist, was ich brauchte, danke! .. ich weiß nicht, warum ich es verpasst habe, es ist die Methode, die direkt nach der Suche in den Dokumenten beschrieben wird! .. irgendwie ist es wirklich flexibel, wie es für replace_ alle Änderungen auf den Pfad im aktuellen Zyklus verdauen gemacht _marks, so ist es nicht zwingend notwendig ist aufzurufen es die 'search' oder' path' Anruf _after_, kann es sogar, bevor die Änderungen aufgerufen werden – aleclofabbro

+1

Dies ist ein Lebensretter! +1 –

+1

Das hat mir das Leben gerettet. Vielen Dank. – FeinesFabi