angualarjs $location服务

Posted 李月云

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了angualarjs $location服务相关的知识,希望对你有一定的参考价值。

$location服务

1.功能:获取路径,修改路径,路径跳转,url解析,实质上是对window.location一些功能的封装。

任何你想要改变当前URL的时候,都可以使用$location
当浏览器的URL改变时,不会重新加载整个页面。如果想要重新加载整个页面,需要使用$window.location.href。

2.主要提供以下服务:
暴露浏览器地址栏中的URL,让你可以:监察URL以及改变URL
将URL对象表示为一个方法集 (protocol, host, port, path, search, hash),当改变地址栏,单击前进/后退或一个历史记录中的链接,打开一个链接时与浏览器同步URL

3.内置方法:

absUrl()  hash()  host()  path()  port()  protocol()  search()  url()

replace():如果被调用,就会用改变后的URL直接替换浏览器中的历史记录,而不是在历史记录中新建一条信息,这样可以阻止后退。

4.内置事件:

$locationChangeStart:在URL改变前发生。这种改变可以通过调用事件的preventDefault方法为阻止。成功时触发$locationChangeSuccess事件。
$locationChangeSuccess:当URL改变后发生。

5.获取url的相关方法

以 ‘http://localhost/$location/21.1%20$location.html#/foo?name=bunny#myhash‘ 这个路径为例
(1)获取当前完整的url路径:
$location.absUrl():
// http://localhost/$location/21.1%20$location.html#/foo?name=bunny#myhash
(2)获取当前url路径(当前url#后面的内容,包括参数和哈希值):
$location.url();
// /foo?name=bunny#myhash
(3)获取当前url的子路径(也就是当前url#后面的内容,不包括参数):
$location.path()
// /foo
(4) 获取当前url的协议(比如http,https)
$location.protocol()
// http
(5) 获取当前url的主机名
$location.host()
// localhost
(6) 获取当前url的端口
$location.port()
// 80 (这里就是wamp的默认端口号)
(7) 获取当前url的哈希值
$location.hash()
// myhash
(8) 获取当前url的参数的序列化json对象
$location.search()
// {"name":"bunny"}

 





























以上是关于angualarjs $location服务的主要内容,如果未能解决你的问题,请参考以下文章

angularJS: $location 服务

Python Pandas 依据标签或者位置选取特定行列 loc和iloc两种方式

如何在 Pandas 或 Python 中根据某些条件放置项目?

getLatitude 上的空指针异常

nginx location匹配及rewrite规则

请求位置服务 Android