angular.js - 关于angularjs变量被浏览器“缓存”的问题

【字号: 日期:2023-01-14浏览:37作者:雯心

问题描述

请教。我在pc站里用angular,是个课程主页,点击收藏是用的angular,问题是:点击收藏后,再点进入课程跳转到别的页面,然后再点击浏览器的回退,退到课程主页后,发现收藏状态不是刚刚操作后的结果,好像是js里的变量缓存了。请问这个怎么解决呢?

问题解答

回答1:

应该不会出现这种问题,按照我的想法,你页面的收藏状态应该是由后端传递给你的某个数据来控制的,你点击收藏之后,发送一个请求到后端,然后后端把那个数据更新,然后返回给你这个数据。只要这个数据更新了,你的那个收藏状态不就更新了吗,不论你怎么进入那个页面,收藏的状态应该都是后端返还给你的某个数据呀,不会随着你浏览器的前进后退发生改变呀,不知道我的解释和你提问的是不是一个地方

回答2:

能贴一下相关代码吗?

回答3:

首先你收藏是交互到服务端的,再之你页面跳转的时候,之前页面的控制器已经销毁了,不存在变量缓存。我觉得你有必要在控制器初始化的时候取一下收藏的数据,再展示到页面

回答4:

只要URL变更后,当前的Controller就被销毁了,等你再一次通过变更URL跳转到该界面,scope里面的数据都是初始化的数据,除非后台给对象设值

相关文章: