以下获取与修改的 URL 以  ( http://172.16.0.88:8100/#/homePage?id=10&a=100  ) 为例

【一】获取 (不修改URL)

  1. //1.获取当前完整的url路径
  2. var absurl = $location.absUrl();
  3. //http://172.16.0.88:8100/#/homePage?id=10&a=100
  4. //2. 获取当前url路径(当前url#后面的内容,包括参数和哈希值):
  5. var url = $location.url();
  6. // 结果:/homePage?id=10&a=100
  7. //3. 获取当前url的子路径(也就是当前url#后面的内容,不包括参数)
  8. var pathUrl = $location.path()
  9. //结果:/homePage
  10. //4.获取当前url的协议(比如http,https)
  11. var protocol = $location.protocol();
  12. //结果:http
  13. //5.获取主机名
  14. var localhost = $location.host();
  15. //结果:172.16.0.88
  16. //6.获取当前url的端口
  17. var port = $location.port();
  18. //结果:8100
  19. //7.获取当前url的哈希值
  20. var hash = $location.hash()
  21. //结果:http://172.16.088
  22. //8.获取当前url的参数的序列化json对象
  23. var search = $location.search();
  24. //结果:{id: "10", a: "100"}

【二】修改 (改变URL相关内容)

  1. //1 修改url的子路径部分(也就是当前url#后面的内容,不包括参数):
  2. $location.url('/validation');
  3. //结果:http://172.16.0.88:8100/#/validation
  4. //2 修改url的哈希值部分
  5. $location.hash('myhash3');
  6. //结果:http://172.16.0.88:8100/#/homePage?id=10&a=100#myhash3
  7. //3 修改url的参数部分(第一个参数表示url参数的属性名,第二个参数是该属性名的属性值,如果是已有属性名,则修改,如果不是已有属性,则新增)
  8. $location.search('id','111')
  9. // 结果(修改参数值):http://172.16.0.88:8100/#/homePage?id=111&a=100
  10. $location.search('ids','111')
  11. // 结果(新增ids参数): http://172.16.0.88:8100/#/homePage?id=111&a=100&ids=111
  12. //4.一次性修改多个参数
  13. $location.search({id:'55','a':'66'})
  14. //结果:http://172.16.0.88:8100/#/homePage?id=55&a=66#myhash3
  15. //5.第一个值表示url参数的属性名,如果是已有属性名,则删除该属性,如果不是已有属性,那就等于没改过
  16. $location.search('age',null)

【三】修改URL但不存入历史记录

在上面的修改url的方法的时候,每修改一次,url都会被存入历史记录,可以使用后退按钮回到修改前的url,如果不想要这种效果,而仅仅是替换当前的记录,可以使用 
$location.path('/validation').replace();

angular中通过$location获取路径(参数)的写法的更多相关文章

  1. Angular中通过$location获取地址栏的参数详解

    Angular中通过$location获取url中的参数 最近,项目开发正在进行时,心有点燥,许多东西没来得及去研究,今天正想问题呢,同事问到如何获取url中的参数,我一时半会还真没想起来,刚刚特意研 ...

  2. Angularjs中使用$location获取url参数时,遇到的坑~~~

    今天在开发时候,需要用到Angularjs1.4.6获取url参数,网上查了一下,有部分文章提到用$location来获取.大致方法如下 var app = angular.module('myApp ...

  3. spring mvc获取路径参数的几种方式 - 浅夏的个人空间 - 开源中国社区

    body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...

  4. 获取window.location.href路径参数

    GetQueryString(param) { //param为要获取的参数名 注:获取不到是为null var currentUrl = window.location.href; //获取当前链接 ...

  5. 如何从angular2中的url获取查询参数?

    问题描述 我使用angular2.0.0-beta.7.当组件在像”/path?query=value1″这样的路径上加载时,它被重定向到”/path”.为什么删除了GET参数?如何保留参数? 路由器 ...

  6. 【转】AngularJs $location获取url参数

    // 带#号的url,看?号的url,见下面 url = http://qiaole.sinaapp.com?#name=cccccc $location.absUrl(); // http://qi ...

  7. springMVC参数的传递方式(1.通过@PathVariabl获取路径参数,2.@ModelAttribute获取数据,3.HttpServletRequest取参,4@RequestParam)

     通过@PathVariabl注解获取路径中传递参数 JAVA      @RequestMapping(value = "/{id}/{str}")      public  ...

  8. js获取路径参数对象

    /** * 获取页面路径参数值 */ function getParams(key) { var result = {}; var paramStr = encodeURI(window.docume ...

  9. spring mvc获取路径参数的几种方式

    一.从视图向controller传递值,  controller <--- 视图 1.通过@PathVariabl注解获取路径中传递参数 (参数会被复制到路径变量) @RequestMappin ...

随机推荐

  1. 8.6 Android灯光系统_源码分析_背光灯

    Change system screen brightness, using android.provider.Settings.System.SCREEN_BRIGHTNESSandroid-er. ...

  2. ORACLE表空间的备份与恢复策略

    转自原文如何进行ORACLE表空间的备份与恢复? 1.切换服务器归档模式,如果已经是归档模式可跳过此步: %sqlplus /nolog (启动sqlplus) SQL> conn / as s ...

  3. POJ 2363 Blocks (ZOJ 1910) 数学

    杨宗纬的歌"这一路走来" 还蛮好听的,这首歌静静的躺在我的音乐盒某个阴暗的角落里,今天随机播放才发现的,哈哈. 数学一直是硬伤...... -------------------- ...

  4. 小米笔记本(13.3 I7) ubuntu14.04下网卡驱动安装

    ubuntu 内核升级到4.6.4(更高版本可能造成系统无法启动) kernel debian包下载地址 http://kernel.ubuntu.com/~kernel-ppa/mainline/v ...

  5. [TypeStyle] Style CSS pseudo elements with TypeStyle

    Just like pseudo-classes, pseudo-elements are added to selectors but instead of describing a special ...

  6. [AngularFire2] Auth with Firebase auth -- email

    First, you need to enable the email auth in Firebase console. Then implement the auth service: login ...

  7. JS生成一个种子随机数(伪随机数)

    原文链接:https://geniuspeng.github.io/2016/09/12/js-random/ 最近有一个需求,需要生成一个随机数,但是又不能完全随机,就是说需要一个种子seed,se ...

  8. iir调试记录

    1.目的 实现採样率fs=50MHz,通带为5MHz~15MHz.阻带衰减60dB的IIR带通滤波器 2.方案 採取直接型 3.具体设计 (1)确定滤波器的系数,系数和滤波器输出量化位宽 先依据要求的 ...

  9. Behavioral模式之Memento模式

    1.意图 在不破坏封装性的前提下,捕获一个对象的内部状态.并在该对象之外保存这个状态,这样以后就可将该对象恢复到原先保存的状态. 2.别名 Token 3.动机 有时候有必要记录一个对象的内部状态.为 ...

  10. 将String转化为Long,并将Long转化为Date 分类: B1_JAVA 2014-06-30 16:23 1249人阅读 评论(0) 收藏

    package org.ljh.test.javaee; import java.text.SimpleDateFormat; import java.util.Date; public class ...