Javascript 在角度项目中获取正确的URL

Javascript 在角度项目中获取正确的URL,javascript,angularjs,Javascript,Angularjs,我有一个用jQuery编写的Js插件。为了让我的插件工作,我需要获取URL,但不需要通过id引用元素的锚标记。也就是说,只获取http://example.com/content/1/而不是说http://example.com/content/1/#comments 我使用以下功能执行此操作: var getProperURL = function() { return window.location.protocol + '//' + window.location.hostname

我有一个用jQuery编写的Js插件。为了让我的插件工作,我需要获取URL,但不需要通过id引用元素的锚标记。也就是说,只获取
http://example.com/content/1/
而不是说
http://example.com/content/1/#comments

我使用以下功能执行此操作:

var getProperURL = function() {
    return window.location.protocol + '//' + window.location.hostname + window.location.pathname;
}

这在大多数情况下都有效。然而,我在angular项目上运行了这个,我只得到了协议和主机名。如何为AngularJs执行此操作?

要仅检索路径而不检索哈希,可以使用
$location.path()

见正式文件:

此方法是getter/setter

调用时返回当前url的路径,不带任何参数

使用参数调用时更改路径并返回$location

注意:路径应始终以正斜杠开始(/),如果缺少正斜杠,此方法将添加正斜杠。 返回完整的url表示,所有段都按照RFC 3986中指定的规则编码

注入
位置
并检索所需的所有数据。指南中有大量示例:

// given url http://example.com/#/some/path?foo=bar&baz=xoxo
var path = $location.path();
// => "/some/path"
在您的网站上:

// given url http://example.com/content/1/#comments
var path = $location.path();
// => "/content/1"

要仅检索不带哈希的路径,可以使用
$location.path()

见正式文件:

此方法是getter/setter

调用时返回当前url的路径,不带任何参数

使用参数调用时更改路径并返回$location

注意:路径应始终以正斜杠开始(/),如果缺少正斜杠,此方法将添加正斜杠。 返回完整的url表示,所有段都按照RFC 3986中指定的规则编码

注入
位置
并检索所需的所有数据。指南中有大量示例:

// given url http://example.com/#/some/path?foo=bar&baz=xoxo
var path = $location.path();
// => "/some/path"
在您的网站上:

// given url http://example.com/content/1/#comments
var path = $location.path();
// => "/content/1"