AngularJs返回前一页面时刷新一次前面页面

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow

也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

               

要求:

页面A进入到页面B,在页面B处理完后返回页面A,页面A里的数据应该动态的减去一条,但由于一般情况下页面是缓存起来的,返回A后读取的是缓存静态页面,里面显示的数据不会减少。应客户要求,需要重新加载一次数据,达到页面A可以刷新数据目的。

研究过程:

从网上寻找发现,有一个方法可以获取到当前页面的URL:$location

以 ‘http://localhost/$location/21.1%20$location.html#/foo?name=bunny#myhash’ 这个路径为例:

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

$location.absUrl():// http://localhost/$location/21.1%20$location.html#/foo?name=bunny#myhash
2. 获取当前url路径(当前url#后面的内容,包括参数和哈希值):

$location.url();// /foo?name=bunny#myhash
3. 获取当前url的子路径(也就是当前url#后面的内容,不包括参数):

$location.path()// /foo
4. 获取当前url的协议(比如http,https)
$location.protocol()// http
5. 获取当前url的主机名

$location.host()// localhost

6. 获取当前url的端口

$location.port()// 80 (这里就是wamp的默认端口号)

获取到当前页的URL后,把它赋给全局变量,当URL变化时,刷新前一页面即可

parent.location.reload(); //该方法可用于刷新前面所以页面

之后继续在网上找有没有更好的办法,发现了一个可以直接使用的方法:

这两个事件分别发生在当url开始发生改变,以及url改变完成.他们都被绑定在$rootScope里面:

$rootScope.$on('$locationChangeStart',function(){    console.log('开始改变$location')});$rootScope.$on('$locationChangeSuccess',function(){    console.log('结束改变$location')});
之后写进代码里做了验证,验证结果可用。写法为:

$rootScope.$on('$locationChangeSuccess',function(){//返回前页时,刷新前页 parent.location.reload(); });


本人技术差,暂时没有更优化的办法,只能用这种办法进行全局刷新。如果进来看的大神们有好办法,麻烦留言告诉我哦!谢谢!











           

给我老师的人工智能教程打call!http://blog.csdn.net/jiangjunshow
这里写图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值