AngularJS是否有办法获取URL路径减去所有参数?我不想把它从地址栏中取出来,我有一个var,其值是我想要路径的URL。
转过来:var url1 = http://domain.com/dir1/dir2/?param1=123¶m2=456
进入:/dir1/dir2/
这只是想返回带有参数的路径:
var justPathLocation = $location.path();
答案 0 :(得分:1)
window.location.pathname
完全返回您需要的内容。
在此网址上:
http://stackoverflow.com/questions/30385367/get-location-path-without-parmaters/30386013#30386013?param=value
它返回:
"/questions/30385367/get-location-path-without-parmaters/30386013"
因此它只返回路径名,没有查询字符串或片段标识符。
更新
这是一种正则表达式方式,它使用域名,您可以使用window.location.hostname
进行硬编码或获取:
var url = "http://domain.com/dir1/dir2/?param1=123¶m2=456";
alert(url.match(/http:\/\/domain\.com(.*)\?/)[1]);
更通用的方法 - ^.*\/\/.*?(\/.+)\?
:
var url = "http://domain.com/dir1/dir2/?param1=123¶m2=456";
alert(url.match(/^.*\/\/.*?(\/.+)\?/)[1]);