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


Posted in Javascript onAugust 02, 2018

最近,项目开发正在进行时,心有点燥,许多东西没来得及去研究,今天正想问题呢,同事问到如何获取url中的参数,我一时半会还真没想起来,刚刚特意研究了一下,常用的方法就以下几种:

1.获取当前完整的url路径

var absurl = $location.absUrl(); //http://88:8100/#/homePage?id=10&a=100

2. 获取当前url路径(当前url#后面的内容,包括参数和哈希值)

var url = $location.url(); // /homePage?id=10&a=100

3. 获取当前url的子路径(也就是当前url#后面的内容,不包括参数)

var pathUrl = $location.path() ///homePage

4.获取当前url的协议(比如http,https)

var protocol = $location.protocol(); //http

5.获取主机名

var localhost = $location.host(); //88

6.获取当前url的端口

var port = $location.port(); //8100

7.获取当前url的哈希值

var hash = $location.hash() //http://088

8.获取当前url的参数的序列化json对象

var search = $location.search(); //{id: "10", a: "100"}

9. 获取url参数

$location.search().name;

$location.search()['name'];

10.注意问题

如果是这样的地址:http://lele.sina.com?name=haha

需要在项目中注入$locationProvider服务

var searchApp = angular.module('searchApp', []);

searchApp.config(['$locationProvider', function($locationProvider) {

$locationProvider.html5Mode(true);

}]);

searchApp.controller('MainCtrl', ['$scope', '$location', function($scope, $location) {

if ($location.search().keyword) {

$scope.keyword = $location.search().keyword;

}
}]);

11.js中获取地址栏参数的方法(附加)

url = https://www.baidu.com/s?ie=utf-8&f=3&rsv_bp=1&rsv_idx=2&tn=baiduhome_pg&wd=%E5%A8%83%E5%93%88%E5%93%88
console.log(window.location.href ); // "https://www.baidu.com/s?ie=utf-8&f=3&rsv_bp=1&rsv_idx=2&tn=baiduhome_pg&wd=%E5%A8%83%E5%93%88%E5%93%88"
console.log(window.location.host); // "www.baidu.com"
console.log(window.location.pathname); // "/s"
console.log(window.location.protocol); // "https:"
console.log(window.location.search); // "?ie=utf-8&f=3&rsv_bp=1&rsv_idx=2&tn=baiduhome_pg&wd=%E5%A8%83%E5%93%88%E5%93%88"

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Jquery实现三层遍历删除功能代码
Apr 23 Javascript
多种JQuery循环滚动文字图片效果代码
Jun 23 Javascript
怎么引入(调用)一个JS文件
May 26 Javascript
JS获取地址栏参数的两种方法(简单实用)
Jun 14 Javascript
jQuery监听文件上传实现进度条效果的方法
Oct 16 Javascript
js实现日期显示的一些操作(实例讲解)
Jul 27 Javascript
Vuex中mutations与actions的区别详解
Mar 01 Javascript
iview table高度动态设置方法
Mar 14 Javascript
json数据传到前台并解析展示成列表的方法
Aug 06 Javascript
node删除、复制文件或文件夹示例代码
Aug 13 Javascript
JavaScript函数重载操作实例浅析
May 02 Javascript
Js利用正则表达式去除字符串的中括号
Nov 23 Javascript
JavaScript防止全局变量污染的方法总结
Aug 02 #Javascript
微信小程序之自定义组件的实现代码(附源码)
Aug 02 #Javascript
Array数组对象中的forEach、map、filter及reduce详析
Aug 02 #Javascript
利用Blob进行文件上传的完整步骤
Aug 02 #Javascript
vue.js图片转Base64上传图片并预览的实现方法
Aug 02 #Javascript
vue组件横向树实现代码
Aug 02 #Javascript
利用Node.js批量抓取高清妹子图片实例教程
Aug 02 #Javascript
You might like
两种设置php载入页面时编码的方法
2014/07/29 PHP
PHP+MySQL存储数据常见中文乱码问题小结
2016/06/13 PHP
IE FF OPERA都可用的弹出层实现代码
2009/09/29 Javascript
JQuery困惑—包装集 DOM节点
2009/10/16 Javascript
javascript跨域刷新实现代码
2011/01/01 Javascript
推荐11款jQuery开发的复选框和单选框美化插件
2011/08/02 Javascript
ECMAScript 创建自己的js类库
2012/11/22 Javascript
使表格的标题列可左右拉伸jquery插件封装
2014/11/24 Javascript
JavaScript实现Flash炫光波动特效
2015/05/14 Javascript
js鼠标单击和双击事件冲突问题的快速解决方法
2016/07/11 Javascript
微信小程序  自定义创建详细介绍
2016/10/27 Javascript
基于JS实现移动端向左滑动出现删除按钮功能
2017/02/22 Javascript
快速使用node.js进行web开发详解
2017/04/26 Javascript
JavaScript 异步调用
2017/10/25 Javascript
zepto.js 实时监听输入框的方法
2018/12/04 Javascript
node中使用es6/7/8(支持性与性能)
2019/03/28 Javascript
[13:18]《一刀刀一天》之DOTA全时刻21:详解TI新赛制 A队再露獠牙
2014/06/24 DOTA
用实例说明python的*args和**kwargs用法
2013/11/01 Python
python结合shell查询google关键词排名的实现代码
2016/02/27 Python
Python实现将MySQL数据库表中的数据导出生成csv格式文件的方法
2018/01/11 Python
Python3 实现随机生成一组不重复数并按行写入文件
2018/04/09 Python
Tensorflow之梯度裁剪的实现示例
2020/03/08 Python
浅谈keras2 predict和fit_generator的坑
2020/06/17 Python
浅析css3中matrix函数的使用
2016/06/06 HTML / CSS
医药大学生求职简历的自我评价
2013/10/17 职场文书
函授生自我鉴定
2014/03/25 职场文书
保证书格式范文
2014/04/28 职场文书
美术学专业求职信
2014/07/23 职场文书
主持稿开场白
2015/06/01 职场文书
法定代表人免职证明
2015/06/24 职场文书
cf战队宣传语
2015/07/13 职场文书
导游词之上饶龟峰
2019/10/25 职场文书
浅谈mysql返回Boolean类型的几种情况
2021/06/04 MySQL
再也不用花钱买漫画!Python爬取某漫画的脚本及源码
2021/06/09 Python
Python Pygame实战之塔防游戏的实现
2022/03/17 Python
【海涛七七解说】DCG第二周:DK VS 天禄
2022/04/01 DOTA