angularJS: $location 服务

记录下今天的学习笔记:

$location服务:

  1. 解析地址栏的URL,让用户可以访问应用当前路径所对应的路由。
  2. 可修改路径、处理各种形式导航。

$location服务对javascript中的window.location对象的API进行了更优雅的封装,并且和angularJS集成在一起。

使用$location服务的最佳场景是:当应用需要在内部进行跳转时候。如:用户注册、修改、或登录后进行的跳转。

$location服务并不刷新整个页面。刷新整个页面使用:$window.location对象(window.location的一个接口)

1. path() - 获取页面当前路径:

$location.path();  //返回当前路径

$location.path(‘/‘); //修改路径为‘/‘路由,并跳转

path()方法直接和H5的历史API进行交互,所以用户可通过点击后退按钮退回到上个页面。

2. replace() - 禁止用户跳转后点击后退按钮。(如用户登录后)

$location.path(‘/home‘);

$location.replace();

或者:

$location.path(‘/home‘).replace();

3. absUrl() - 获取编码后的完整URL

$location.absUrl();

4. hash() - 获取URL中的hash片段

$location.hash(); // 返回当前的hash片段

5. host() - 获取URL中的主机

$location.host();

6. port() - 获取URL中的端口号

$location.port();

7. protocol() - 获取URL中的协议

$location.protocol();

8. search() - 获取URL中的查询串

$location.search();

这个方法可传入新的查询参数,用来修改URL中的查询串部分:

//用对象设置查询:

$location.search({name: ‘Ari‘, username: ‘auser‘});

//用字符串设置查询:

$location.search(‘name=Air&username=auser‘);

search方法可接收两个可选参数:

  • search(可选,字符串或对象) - 代表新的查询参数。hash对象的值可以是数组
  • paramValue(可选,字符串) - 如果search参数的类型是字符串,那么paramValue会作为该参数的值覆盖URL当中对应的值。如果paramValue的值是null,对应的参数会被移除。

9. url() - 获取当前的URL:

$location.url();

调用url()方法时如果传了参数,会设置并修改当前的URL,同时修改URL中的路径、查询串和hash,并返回$location。

//设置新的URL

$location.url(‘/home?name=Ari#hashthing‘);

方法可接收两个参数:

url(可选,字符串) - 新的URL的基础的前缀。

replace(可选,字符串) - 想要修改成的路径。

时间: 2024-11-17 22:12:37

angularJS: $location 服务的相关文章

angualarjs $location服务

$location服务 1.功能:获取路径,修改路径,路径跳转,url解析,实质上是对window.location一些功能的封装. 任何你想要改变当前URL的时候,都可以使用$location当浏览器的URL改变时,不会重新加载整个页面.如果想要重新加载整个页面,需要使用$window.location.href. 2.主要提供以下服务:暴露浏览器地址栏中的URL,让你可以:监察URL以及改变URL将URL对象表示为一个方法集 (protocol, host, port, path, sear

『AngularJS』$location 服务

参考: ng.$location Developer Guide: Angular Services: Using $location 简介 $location服务解析在浏览器地址栏中的URL(基于window.location)并且让URL在你的应用中可用.改变在地址栏中的URL会作用到$location服务,同样的,改变$location服务也会改变浏览器的地址栏.(可以使用$location进行重定向等操作) $location服务: 暴露浏览器地址栏中的URL,让你可以: 监察URL.

Android - 位置定位(Location)服务(Service)类的基本操作

位置定位(Location)服务(Service)类的基本操作 本文地址: http://blog.csdn.net/caroline_wendy 定位服务,可以确定移动设备的地址,在地图相关服务中,经常会使用GPS和移动相关的定位服务,GPS较为精准. 根据常用的定位服务功能,又添加网络检测和Wifi检测,和启动相关界面进行测试的功能. 代码: import android.content.Context; import android.content.Intent; import andro

[email protected] $location.path('/login')-$location服务用法示例

$httpProvider interceptor .factory('auth403', ['$rootScope', '$q', '$location', function auth403($rootScope, $q, $location) { return { request: function (config) { console.log(config); var start = new Date(); return config; }, response: function (res

[AngularJS] $location 服务简介

参考博客:  https://www.cnblogs.com/gaoruixin/p/6070502.html 简介 $location服务解析在浏览器地址栏中的URL(基于window.location)并且让URL在你的应用中可用.改变在地址栏中的URL会作用到$location服务,同样的,改变$location服务也会改变浏览器的地址栏.(可以使用$location进行重定向等操作) $location服务: 暴露浏览器地址栏中的URL,让你可以: 监察URL. 改变URL. 与浏览器同

$http服务和$location

1.angular的$http服务跟jquery中的ajax很类似,用法如下: $http({ method : 'GET', url : 'data.php' }).success(function(data,state,headers,config){ console.log(state); }).error(function(data){ console.log(data); }); 其中method也可以为JSONP 2.angular中的$location服务 $location下有很

Angularjs 常用服务 $http $location $anchorScroll $cacheFactory $timeout $interval $sce

Angularjs 常用服务 $http $location$anchorScroll $cacheFactory $timeout $interval $sce学习要点:1. Angularjs 中的 $http 服务2. Angularjs 中的 $location $anchorScroll 服务3. Angularjs 中的 $cacheFactory 服务4. Angularjs 中的 $timeout $interval 服务5. $sce 服务 浏览器简析 html 标签1. An

angularJS服务一

一 认识服务 1.服务这个概念其实并不陌生,在其他语言中如java便有这样的概念,其作用就是对外提供某个特定的功能,如消息服务,文件压缩服务等,是一个独立的模块.ng的服务是一个单例对象或函数,对外提供特定的功能. 2.特点:首先是一个单例,即无论这个服务被注入到任何地方,对象始终只有一个实例. 其次这与我们自己定义一个function然后在其他地方调用不同,因为服务被定义在一个模块中,所以其使用范围是可以被我们管理的.ng的避免全局变量污染意识非常强. 3.ng提供了很多内置的服务,如$loc

【AngularJS学习笔记】01 指令、服务和过滤器

AngularJS 指令是扩展的 HTML 属性,带有前缀 ng-. 比如: ng-app 指令初始化一个 AngularJS 应用程序.注意ng-app一般为空,如果值不为空,就得加这样一句代码var app = angular.module('名字', []); ng-init 指令初始化应用程序数据. 这个在之前已经说过了,下面讲一下之前没讲到的. ng-repeat指令与ng-options指令 <!--一般ng-repeat通常用于ul与li这种列表和表格--> <div ng