Angular 在redux中:每个组件都应该只从存储中获取数据?

Angular 在redux中:每个组件都应该只从存储中获取数据?,angular,redux,ngrx,Angular,Redux,Ngrx,只是需要在redux store上澄清一点,因为stackoverflow中的其他答案和问题都不足以让我了解指导原则 根据我对redux的理解,在redux应用程序中,每个组件都应该仅从存储中获取数据?这是真的吗?所有的案子 那些案子呢 计时器: 在我的组件中,我显示一个计数器(开始游戏时倒计时)。所以每秒钟计数器都会下降。我是否必须调度一个操作来降低存储中的数字,并且因为组件订阅了存储,所以它会得到更新。这是保持redux使用的正确方法吗?我认为它需要运行额外的脚本来更新我的视图 自动完成:

只是需要在redux store上澄清一点,因为stackoverflow中的其他答案和问题都不足以让我了解指导原则

根据我对redux的理解,在redux应用程序中,每个组件都应该仅从存储中获取数据?这是真的吗?所有的案子

那些案子呢

计时器: 在我的组件中,我显示一个计数器(开始游戏时倒计时)。所以每秒钟计数器都会下降。我是否必须调度一个操作来降低存储中的数字,并且因为组件订阅了存储,所以它会得到更新。这是保持redux使用的正确方法吗?我认为它需要运行额外的脚本来更新我的视图

自动完成: 我应该将选项存储在商店中吗

由于所有数据都需要来自存储区,因此我需要将自动完成选项从api存储到存储区。并从商店中检索自动完成选项

但它必须是每个组件,因为如果我有一个多个相同的组件和不同的数据呢?所以我必须做一个这样的状态:

state = { fooComponent: { autocomplete: [{ key, value }, ... ] } }

我这样做是因为每次显示这些选项时,我只需要显示一个临时数据。

并非所有数据都应该存在于存储中

发件人:

特别是,当您构建具有大量用户交互和多个数据源的应用程序时,当管理服务中的状态不再足够时,您可能会使用NgRx

SHARI原则是回答“我是否需要NgRx”这一问题的一个很好的实质:

共享:由许多组件和服务访问的状态

水合状态:从外部储存中持续和再水合的状态

可用:重新输入路线时需要可用的状态

已检索:必须检索的状态,但有副作用

受影响:受其他来源的操作影响的状态


并非所有数据都应该存在于存储中

发件人:

特别是,当您构建具有大量用户交互和多个数据源的应用程序时,当管理服务中的状态不再足够时,您可能会使用NgRx

SHARI原则是回答“我是否需要NgRx”这一问题的一个很好的实质:

共享:由许多组件和服务访问的状态

水合状态:从外部储存中持续和再水合的状态

可用:重新输入路线时需要可用的状态

已检索:必须检索的状态,但有副作用

受影响:受其他来源的操作影响的状态


把所有东西都存放在商店里甚至都不是一个好的做法。您希望在存储中存储“应用程序状态”。状态可以是“倒计时完成”或“倒计时进行中”,但不是秒的值。这将是一种过度的杀伤力。以秒为单位的倒计时值可以完美地存储在倒计时组件的本地状态中。您希望保持它的简单性,并且不污染REDUX操作历史

将所有内容存储在商店中甚至都不是一个好的做法。您希望在存储中存储“应用程序状态”。状态可以是“倒计时完成”或“倒计时进行中”,但不是秒的值。这将是一种过度的杀伤力。以秒为单位的倒计时值可以完美地存储在倒计时组件的本地状态中。您希望保持它的简单性,并且不污染REDUX操作历史