2014-05-06 6 views
24

Wenn meine URL http://www.something.com/foo/bar/index.html?color=yellow&animal=rat ist, scheint es, als ob:Gibt es eine integrierte Möglichkeit, die aktuelle URL ohne Abfrageparameter abzurufen?

  • $location.path()foo/bar/index.html
  • $location.absUrl() zurückkehren wird http://www.something.com/foo/bar/index.html?color=yellow&animal=rat zurückkehren
  • $location.url()foo/bar/index.html?color=yellow&animal=rat

jede Funktion Gibt es zurück, die zurück http://www.something.com/foo/bar/index.html?

Oder muss ich das selbst mit Funktionen wie protcol, Host, Port, etc. (oder strip die Abfrage-Parameter aus mir selbst)?

+2

Als ich das tat, hatte ich es zu konstruieren mich selber. Ich würde mich freuen, wenn das nicht nötig wäre. – Seiyria

+0

Ist $ location.absUrl() nicht zurück, was Sie wollen oder warum entfernen Sie nicht einfach das? Am Ende? –

+0

$ location.absUrl() hat am Ende die Abfrageparameter ("? Color = yellow & animal = rat"). Einfach genug, um sich loszureißen, aber ich fragte mich nur, ob es eine eingebaute Funktion gab, da sie Funktionen für fast alles andere zu haben scheinen. – Jer

Antwort

31

Soweit ich weiß, müssen Sie es selbst konstruieren. Nicht, dass Sie wurden gefragt, wie es zu konstruieren, aber für diejenigen, die sich fragen:

var url = $location.absUrl().split('?')[0] 
+2

auch versuchen $ location. $$ Pfad und $ location. $$ URL –

1

Nicht, dass dies beseitigt die Notwendigkeit, es zu bauen selbst, nur eine andere Art und Weise, das gleiche zu tun. Wenn Sie window.location Objekt verwenden, können Sie einfach sagen window.location.origin + window.location.pathname

window.location Objekt

host:"localhost.abc.com:8080" 
hostname:"localhost.abc.com" 
href:"http://localhost.abc.com:8080/quickpick/repossessions/?displayStr=Repossessions&from=%2F&page=1"(whole url) 

origin:"http://localhost.abc.com:8080" 
pathname:"/quickpick/repossessions/" 
port:"8080" 
protocol:"http:" 
Verwandte Themen