搜索

首页  >  问答  >  正文

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

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

曾经蜡笔没有小新曾经蜡笔没有小新2745 天前611

全部回复(4)我来回复

  • 为情所困

    为情所困2017-05-15 17:03:29

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

    回复
    0
  • 仅有的幸福

    仅有的幸福2017-05-15 17:03:29

    能贴一下相关代码吗?

    回复
    0
  • 天蓬老师

    天蓬老师2017-05-15 17:03:29

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

    回复
    0
  • 大家讲道理

    大家讲道理2017-05-15 17:03:29

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

    回复
    0
  • 取消回复