我试图用Java Spring构建一个AngularJS单页应用程序作为休息服务。Angularjs在破坏页面之前完成所有承诺
目前我的控制器可以让我保存所有数据填充到后端,我有我的代码是这样的:
$scope.$on('$destroy', function() {
personalDataService.saveData.query({}, {
personalData: $scope.personalData
}, function (res) {
console.log(res);
});
});
在另一页,我装的数据部分来自同表,以便做一些验证,例如检查用户是否是女性,以确定她需要填写另一个表单。
问题是,当我离开这个页面时,保存的承诺还没有返回,第二页已经加载并且数据没有完成。如果我再次刷新第二页,那么一切都恢复正常
有没有什么办法来确保所有的承诺已经在销毁/离开这个页面之前返回?
您可以使用拦截器,以保持所有的承诺的轨道。根据承诺的状态,您可以启用或禁用第二页的链接。 –
如果数据必须跨越会话,则使用cookie或localStorage,这两者都是同步处理的。否则,将数据保存在JavaScript中。 –