如何获取URL的最后一部分,忽略任何GET参数?

时间:2015-11-08 21:06:59

标签: javascript angularjs

我期待这里的网址:

/user/username

但是最终用户也可以添加他们想要的任何参数,例如:

/user/username?foo=bar

话虽如此,使用AngularJS,我之后只有username(在/user/之后出现)没有其他任何东西的首选方式是什么?

3 个答案:

答案 0 :(得分:1)

您应该使用$location服务及其.path()方法,然后使用常规split()和索引。

答案 1 :(得分:1)

我怀疑它有一个专用的功能,但似乎很容易通过查询将其拉出字符串。 使用$ location.path()获取路径,然后这两个都为您完成工作。

url.substring(6, (url.indexOf('?') != -1 ? url.indexOf('?') : url.length))

url.split('/')[2].split('?')[0]

同样的问题:Is there a built-in way to get the current URL without any query parameters?

答案 2 :(得分:0)

您可以使用window.location或$ location服务获取路径,然后使用split函数 像这样

var url = "/user/username?foo=bar";
var check = url.split('/user/');
var username = check[1].split('?');
console.log(username[0]);

您可以在网址上应用多个拆分来查找用户名。希望这就是你想要的。