在组件Angular之间共享数据的更好方法

问题描述 投票:0回答:1

我正在使用Angular8。当我想通过路由在组件之间共享变量时,请执行以下操作:

  1. [我通过state添加数据,例如:this.router.navigate(["thing/"],{state: {data: {..}}})
  2. 在组件中,我使用history.state.data获取变量。

它可以工作,但是我只是想知道是否有一种更好的方式来在组件之间共享数据,因为我是从浏览器的历史记录中获取数据的,如果我刷新了,就不再有数据了。>

我正在使用Angular8。当我想通过路由在组件之间共享变量时,请执行以下操作:我按状态添加数据,例如:this.router.navigate([“ thing /”],{state:{data: {..}}})在...

angular typescript routing
1个回答
0
投票

还有其他几种在路由时传递数据的方法。但是由于WebApp的性质,当您重新加载页面时,所有内存中的数据都会丢失(因为这基本上会重新启动应用程序)。因此,如果您希望数据持久化,则将其放入持久性存储中。现在也有多个选项,例如SessionStorageLocalStorageÌndexedDB甚至是WebServer。哪一种是最适合您的案例的解决方案,在很大程度上取决于您要保留哪种数据。

© www.soinside.com 2019 - 2024. All rights reserved.