angular 获取上一个路由地址 获取当前页地址 地址裁切

本文介绍了如何在AngularJS应用中使用$location服务来获取和修改URL,包括获取当前页面地址的各种方法,如absUrl(), url(), path(), protocol() 和 host()等。此外,还展示了如何通过监听路由变化获取上一个路由地址。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

获取当前页地址 

例如:url:http://localhost:9096/OA_Web/main.html#/workSheet/calender_leaderDetail/21

console.log($location.absUrl()); 

输出为:http://localhost:9096/OA_Web/main.html#/workSheet/calender_leaderDetail/21


console.log($location.url()); 

输出为:/workSheet/calender_leaderDetail/21


console.log($location.path()); 
输出为:/workSheet/calender_leaderDetail/21

console.log($location.protocol());
输出为:http

console.log($location.host());
输出为:localhost

地址裁切

var url= urls.split('/')[3].substring(1,2);
输出为:1

修改url

$location.url('/aaa'); //修改url的子路径部分(也就是当前url#后面的内容,不包括参数) 
$location.search('id','111')//修改url的参数部分 第一个参数表示url参数的属性名,第二个参数是该属性名的属性值,有则修改无则添加。
$location.search({id:'55','a':'66'}) //修改多个参数
$location.search('age',null) //删除属性,有则删除

获取上一个路由地址

app.controller('calender_detail_Ctrl', ['$scope','$stateParams', '$rootScope', '$http', '$location',
    function ($scope,$stateParams, $rootScope, $http, $location){
        $rootScope.$on('$stateChangeSuccess', function (ev, to, toParams, from, fromParams) {  
            $rootScope.previousState = from; //from为前一个页面的路由信息:url,cache,views,name  
            $rootScope.previousParams = fromParams; //fromParams为前一个页面的ID信息  
            $rootScope.nowState = to; //to为当前页面的路由信息:url,cache,views,name,同样,toParams为当前页面的ID信息  
        });

}])
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值