详解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实现的仿sohu博客更换页面风格(简单版)
Mar 22 Javascript
锋利的jQuery jQuery中的DOM操作
Mar 21 Javascript
javascript间隔定时器(延时定时器)学习 间隔调用和延时调用
Jan 13 Javascript
js面向对象编程之如何实现方法重载
Jul 02 Javascript
jQuery实现悬浮在右上角的网页客服效果代码
Oct 24 Javascript
利用React-router+Webpack快速构建react程序
Oct 27 Javascript
使用base64对图片的二进制进行编码并用ajax进行显示
Jan 03 Javascript
angularjs实现柱状图动态加载的示例
Dec 11 Javascript
微信小程序slider组件使用详解
Jan 31 Javascript
vue与vue-i18n结合实现后台数据的多语言切换方法
Mar 08 Javascript
JS Object.preventExtensions(),Object.seal()与Object.freeze()用法实例分析
Aug 25 Javascript
Vue ECharts实现机舱座位选择展示功能
May 15 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页面转UTF-8中文编码乱码的解决办法
2015/10/20 PHP
基于PHP实现用户注册登录功能
2016/10/14 PHP
PHP命名空间namespace的定义方法详解
2017/03/29 PHP
浅谈PHP发送HTTP请求的几种方式
2017/07/25 PHP
PJ Blog修改-禁止复制的代码和方法
2006/10/25 Javascript
发两个小东西,ASP/PHP 学习工具。 用JavaScript写的
2007/04/12 Javascript
iframe 自适应高度[在IE6 IE7 FF下测试通过]
2009/04/13 Javascript
javascript或asp实现的判断身份证号码是否正确两种验证方法
2009/11/26 Javascript
js设置cookie过期当前时间减去一秒相当于立即过期
2014/09/04 Javascript
jQuery垂直多级导航菜单代码分享
2015/08/18 Javascript
全面了解函数声明与函数表达式、变量提升
2016/08/09 Javascript
JS函数多个参数默认值指定方法分析
2016/11/28 Javascript
jQuery 插件实现随机自由弹跳气泡样式
2017/01/12 Javascript
jquery实现下拉框左右选择功能
2017/02/21 Javascript
微信小程序 获取session_key和openid的实例
2017/08/17 Javascript
详解webpack运行Babel教程
2018/06/13 Javascript
vue-cli 引入jQuery,Bootstrap,popper的方法
2018/09/03 jQuery
JQuery事件委托(适用于给动态生成的脚本元素添加事件)
2020/02/01 jQuery
在项目vue中使用echarts的操作步骤
2020/09/07 Javascript
在Python中进行自动化单元测试的教程
2015/04/15 Python
详解Python中dict与set的使用
2015/08/10 Python
Python绘制堆叠柱状图的实例
2019/07/09 Python
Django 实现图片上传和显示过程详解
2019/07/18 Python
python list转置和前后反转的例子
2019/08/26 Python
python输出pdf文档的实例
2020/02/13 Python
python3 使用traceback定位异常实例
2020/03/09 Python
CSS3 transform的skew属性值图文详解
2014/07/21 HTML / CSS
在SQL Server中创建数据库主要有那种方式
2013/09/10 面试题
电工技术比武方案
2014/05/11 职场文书
领导班子四风对照检查材料思想汇报
2014/09/26 职场文书
九华山导游词
2015/02/03 职场文书
困难补助申请报告
2015/05/19 职场文书
2015年幼儿园学期工作总结
2015/05/22 职场文书
python异步的ASGI与Fast Api实现
2021/07/16 Python
html+css实现滚动到元素位置显示加载动画效果
2021/08/02 HTML / CSS
vue+echarts实现多条折线图
2022/03/21 Vue.js