详解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 相关文章推荐
js中将多个语句写成一个语句的两种方法小结
Dec 08 Javascript
页面中iframe相互传值传参
Dec 13 Javascript
js Calender控件使用详解
Jan 05 Javascript
Node.js的Express框架使用上手指南
Mar 12 Javascript
vue.js学习笔记之绑定style样式和class列表
Oct 31 Javascript
深入浅析Vue组件开发
Nov 25 Javascript
完美解决spring websocket自动断开连接再创建引发的问题
Mar 02 Javascript
React利用插件和不用插件实现双向绑定的方法详解
Jul 03 Javascript
AngularJS实现自定义指令及指令配置项的方法
Nov 20 Javascript
vue模式history下在iis中配置流程
Apr 17 Javascript
layui的layedit富文本赋值方法
Sep 18 Javascript
Vue.js中v-for指令的用法介绍
Mar 13 Vue.js
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 循环删除无限分类子节点的实现代码
2013/06/21 PHP
php另类上传图片的方法(PHP用Socket上传图片)
2013/10/30 PHP
php字符串分割函数用法实例
2015/03/17 PHP
WordPress中缩略图的使用以及相关技巧
2015/11/24 PHP
thinkphp 验证码 的使用小结
2017/05/07 PHP
JS 事件绑定函数代码
2010/04/28 Javascript
文件编码导致jquery失效的解决方法
2013/06/26 Javascript
javascript常用方法总结
2015/05/14 Javascript
ECMAScript6快速入手攻略
2016/07/18 Javascript
JS数组搜索之折半搜索实现方法分析
2017/03/27 Javascript
3分钟掌握常用的JS操作JSON方法总结
2017/04/25 Javascript
JS实现的Unicode编码转换操作示例
2017/04/28 Javascript
Angular.JS中指令ng-if、ng-show/ng-hide和ng-switch的使用教程
2017/05/07 Javascript
jQuery实现的简单无刷新评论功能示例
2017/11/08 jQuery
浅析前端路由简介以及vue-router实现原理
2018/06/01 Javascript
NodeJs项目中关闭ESLint的方法
2018/08/09 NodeJs
bootstrap下拉框动态赋值方法
2018/08/10 Javascript
nodejs实现范围请求的实现代码
2018/10/12 NodeJs
解决layui追加或者动态修改的表单元素“没效果”的问题
2019/09/18 Javascript
Python和php通信乱码问题解决方法
2014/04/15 Python
Python的iOS自动化打包实例代码
2018/11/22 Python
Flask教程之重定向与错误处理实例分析
2019/08/01 Python
tensorflow实现tensor中满足某一条件的数值取出组成新的tensor
2020/01/04 Python
CSS3 Flex 弹性布局实例代码详解
2018/11/01 HTML / CSS
美国网上订购鲜花:FTD
2016/09/23 全球购物
巴西儿童时尚购物网站:Dinda
2019/08/14 全球购物
美国折扣香水网站:The Perfume Spot
2020/12/12 全球购物
介绍一下Java的安全机制
2012/06/28 面试题
部队党性分析材料
2014/02/16 职场文书
优质护理服务演讲稿
2014/05/07 职场文书
交通文明倡议书
2014/05/16 职场文书
假释思想汇报范文
2014/10/11 职场文书
六查六看个人剖析材料
2014/10/14 职场文书
2015秋季开学典礼主持词
2015/07/16 职场文书
2019关于垃圾分类处理的调查报告
2019/12/26 职场文书
Redis Stream类型的使用详解
2021/11/11 Redis