详解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 相关文章推荐
怎么选择Javascript框架(Javascript Framework)
Nov 22 Javascript
jquery获取tagName再进行判断
May 29 Javascript
JavaScript 变量、作用域及内存
Apr 08 Javascript
基于jQuery实现select下拉选择可输入附源码下载
Feb 03 Javascript
基于JavaScript实现树形下拉框
Aug 10 Javascript
livereload工具实现前端可视化开发【推荐】
Dec 23 Javascript
Vue 仿百度搜索功能实现代码
Feb 16 Javascript
JS实现禁止用户使用Ctrl+鼠标滚轮缩放网页的方法
Apr 28 Javascript
vue实现全选和反选功能
Aug 31 Javascript
基于Bootstrap实现城市三级联动
Nov 23 Javascript
Vue实现PopupWindow组件详解
Apr 28 Javascript
JavaScript 中的12种循环遍历方法【总结】
May 31 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 Document 代码注释规范
2009/04/13 PHP
php foreach循环中使用引用的问题
2013/11/06 PHP
ThinkPHP中使用Ueditor富文本编辑器
2015/09/02 PHP
php版银联支付接口开发简明教程
2016/10/14 PHP
PHP验证终端类型是否为手机的简单实例
2017/02/07 PHP
php实现生成code128条形码的方法详解
2017/07/19 PHP
php的扩展写法总结
2019/05/14 PHP
TP5框架安全机制实例分析
2020/04/05 PHP
JavaScript.The.Good.Parts阅读笔记(二)作用域&闭包&减缓全局空间污染
2010/11/16 Javascript
jQuery插件支持同一页面被多次调用
2016/02/14 Javascript
nodejs的压缩文件模块archiver用法示例
2017/01/18 NodeJs
canvas绘制环形进度条
2017/02/23 Javascript
3种vue路由传参的基本模式
2018/02/22 Javascript
angularjs的单选框+ng-repeat的实现方法
2018/09/12 Javascript
JavaScript时间与时间戳的转换操作实例分析
2018/12/07 Javascript
详细介绍解决vue和jsp结合的方法
2020/02/06 Javascript
extjs图表绘制之条形图实现方法分析
2020/03/06 Javascript
通过实例解析JavaScript for in及for of区别
2020/06/15 Javascript
JQuery+drag.js上传图片并且实现图片拖曳
2020/11/18 jQuery
Python获取服务器信息的最简单实现方法
2015/03/05 Python
pyenv命令管理多个Python版本
2017/03/26 Python
Python实现列表删除重复元素的三种常用方法分析
2017/11/24 Python
python 获取当天凌晨零点的时间戳方法
2018/05/22 Python
pygame游戏之旅 计算游戏中躲过的障碍数量
2018/11/20 Python
解决redis与Python交互取出来的是bytes类型的问题
2020/07/16 Python
使用jupyter notebook运行python和R的步骤
2020/08/13 Python
麦德龙官方海外旗舰店:德国麦德龙超市
2017/12/23 全球购物
全陪导游欢迎词
2014/01/17 职场文书
天网工程实施方案
2014/03/26 职场文书
领导四风问题整改措施思想汇报
2014/10/13 职场文书
2014年小学教研工作总结
2014/12/06 职场文书
课外活动实习计划
2015/01/19 职场文书
简历自我评价模板
2015/03/11 职场文书
Python基础之元类详解
2021/04/29 Python
纯html+css实现打字效果
2021/08/02 HTML / CSS
《总之就是很可爱》新作短篇动画《总之就是很可爱~制服~》将于2022年夏天播出
2022/04/07 日漫