使用: Angular 5
在我们的应用程序中,我们有storeId
用于获取商店特定数据。
在对我们的后端进行storeId
调用时,会使用此http
。
有时我们将它作为URL路由 endpoint.dev/stores/10 ,有时作为查询参数 endpoint.dev?storeId=1
所以用ex:storeService.storeId
用户可以通过更改地址,授权等来切换商店 ...
我当前解决方案(redux store)的问题:
storeId
。如果新页面在storeId
状态发生变化之前开始渲染,我们将收到错误的http响应。
我们如何确保呈现的页面仅使用成员storeId执行http调用?
答案 0 :(得分:0)
我们如何确保呈现的页面仅使用成员storeId执行http调用?
在得到回复之前不要离开。因此,例如,在您的授权中,您执行此操作:
this.api.authorize()
.do(storeId => this.storeService.setStoreId(storeId))
.subscribe(() => this.router.navigate(...));
这当然是伪代码,因为你没有共享任何代码,所以有很多假设;无论哪种方式,它的要点是你只是在实际更新ID之后将路由链接到。