angular - Angular将一组数据从一个模块传递到另一个模块
问题描述
我有一个网格,其中包含用户可以选择的信息列表。一旦用户选择了某些行,这些行应该作为摘要传递到不同的页面,也可以用于更多操作。
例如,有从后端提取的交易列表。用户可以从网格中选择某些交易。然后将这些选定的交易转移到另一个页面作为摘要进行成本管理。
交易清单页面 -> 成本管理页面
如何将这些选定列表从第一个模块传递到第二个模块?
角度版本:11
解决方案
这取决于您的成本管理页面是否应在页面刷新时保留数据。
服务
如果您不希望数据在页面刷新时被持久化,您可以沿着根提供的服务的单一共享实例的路线走。此服务实例将通过角度注入您可能使用的任何组件中。
导航附加功能
就个人而言,如果可能的话,我希望我的应用程序始终是无状态的。因此,将数据放入服务中会在页面刷新时丢失。
通过将数据放入QueryParams
,您可以随时维护应用程序的状态,例如刷新页面、共享链接、添加到收藏夹等。
如果您想要一种更集中的方式在路线之间传递数据,您可以使用NavigationExtras。这不需要您创建单例服务、订阅等。这是在 Angular 7 中引入的,主要用于您提到的目的。
推荐阅读
- javascript - 返回包含该特定元素的完整数组
- google-chrome-extension - 浏览器清除数据后未清除 Microsoft Graph 登录数据
- docker - windows server 2019上rabbitmq的docker镜像
- c++ - 我的第一个柯南包没有被 CMAKE 找到?
- apache-kafka - 当 avro 模式由另一个模式作为可选字段组成时,反序列化问题
- hyperlink - Flutter web:使用 url_launcher 在 target="_self" 中启动页面
- tabulator - 选项列表选项显示 [object Object]
- python - CodeHS 使我的程序失败,即使它完全有效
- xml - 如何阅读特定的 XML 文件部分 - VB.Net
- python - 元胞自动机模拟问题