Angular 4应用程序状态管理

时间:2018-03-07 10:58:19

标签: angular spring-mvc state-management application-state

我会尝试将这个问题更多地作为问题而不是讨论点。

我正在构建一个Angular 4 + Spring应用程序,我遇到状态管理问题。应用程序功能包括登录,交互式地图,带设置的子页面等。

我的问题: 例如,用户登录,使用交互式地图(更改地图图层在地图上显示或放大),然后转到子页面或完全从应用程序注销。 所需的功能是下次用户登录时,他/她上次做的事情也会出现在那里。

我做了一些研究,目前我看到了3个选项:

  1. 使用Cookie的前端方法
  2. 使用包含这些值的API的后端方法
  3. 终极版
  4. 此时我不确定应采取哪种方法..

1 个答案:

答案 0 :(得分:1)

如果要永久存储用户数据,最简单的方法是将它们放入浏览器的localStorage。这样,您可以在加载组件时检索用户数据。为此,您只需执行此操作:

//Put data to local storage
localStorage.setItem('userData', JSON.stringify(data));

//Get data from local storage
let userData = JSON.parse(localStorage.getItem('userData'))

redux approch的问题是,如果你重新加载你的应用程序,你的积蓄就会消失。

涉及后端的方法也不是最好的主意。因为您需要额外调用后端,所以需要新表来保存每个用户的数据等。