AngularJS $ location在哈希之前获取路径

MCh*_*han 5 angularjs

我需要在我的AngularJS应用程序中的#之前提取路径,例如,如果我的应用程序URL是:

http://www.domain.com/folder/app/#/home
Run Code Online (Sandbox Code Playgroud)

我只需要获得这部分内容:

http://www.domain.com/folder/app/
Run Code Online (Sandbox Code Playgroud)

我已经尝试过使用$ location.path,$ location.abspath但找不到任何可以让我获得#之前的第一部分的函数.有人可以通过告诉我在这里缺少什么来帮助我吗?如果有办法获取网址的第一部分(在#之前)?谢谢

Mat*_*ert 6

您可以将路径拆分为路径名和哈希部分,然后仅使用路径名:

$location.absUrl().split('#')[0]
// "http://www.example.com/folder/app/"
Run Code Online (Sandbox Code Playgroud)

split 只是一个返回数组的Javascript字符串操作:

'http://www.example.com/folder/app/#/home'.split('#')
["http://www.example.com/folder/app/", "/home"]
Run Code Online (Sandbox Code Playgroud)

  • 看起来有一个拼写错误,它应该是`$ location.absUrl().split('#')[0]`而不是. (7认同)