我刚开始使用Angular4和NodeJS。
我有一个signin post请求,它将数据(例如用户角色,名字,姓氏)发送到我的角应用程序并将其存储在变量中。但是,当我重新加载页面时,变量再次为空。
所以我想知道,有没有办法避免这种情况(例如,在每次重新加载页面时获取必要的数据?)。或者是否有更好的做法来存储从角色邮寄请求中收到的数据? Localstorage和sessionstorage似乎真的不能保存给我。
我试着谷歌这几个小时,但我找不到合适的答案。
答案 0 :(得分:2)
如果您只是使用
从一条路线导航到另一条路线
this.router.navigate(['/heroes']);
然后您可以将数据保存在服务变量中,或使用this.router.navigate(['/heroes', { firstName: 'First Name', lastName: 'Last Name' }]);
相反,如果您计划显式重新加载页面,则angular无法控制它,因为http是无状态协议。您可以考虑使用LocalStorage或Cookie来保存您的数据。
或者在启动组件之前检查Angular Resolve以加载数据,以便事先获得所有数据。