React-Native:什么时候进入应用状态并在应用中反应状态?
我在我的应用程序中实现了redux
。我的场景是从一个组件导航到另一个组件时,我正在更新redux
状态。所以当我回到以前的组件时,获取最后的redux
状态数据。React-Native:什么时候进入应用状态并在应用中反应状态?
预期结果:
当我回来前一个组件,需要在相同的状态。我不想要最近的更改数据。
Ex: Marie ->April, when I go back, Marie <- April
实际结果:
它的更新最近的变化数据。
Ex: Marie ->April, when I go back, April <- April
我该如何为此编写应用程序结构?这里需要redux
吗?或者我应该在导航时作为params
与组件状态一起管理?
我不确定我的答案是否是正确的实施方式。但目前,我做这样的:(:this.state
,一流的领域,全局对象或终极版EX)
组件的State
可通过多个位置分散。
我从你的问题理解什么是你正在处理的同时2个要求:需要组件的状态的
- 部分被保存下来,当 导航背部和福特。
- 组件状态的另一部分需要与 其他组件(保持不变)在导航返回和福特时共享。
我不知道这两种要求都有一个解决方案。如果我必须这样做,我将设计组件的状态,使其分散或散布在不同的位置,每个位置都用于自己的目的。基本上,我用2个不同的解决方案:它需要保留的将被放置在 this.state
状态
- 部分。
- 需要共享的部分状态将被放入
Redux
。
对于此解决方案的工作,我不使用react-redux,只有redux
。在redux
中有一种叫做store.getState()的方法,它将返回单个Redux状态对象。我使store
只读访问全局可访问,并使用它来呈现需要共享数据的组件的某些部分。
如果数据在多个类中需要,那么使用redux状态,否则使用react状态,它取决于组件的生命周期。 由于redux状态是全局的,并且仅在定义它的类中处于活动状态。 根据您的情况,您可以对第一个组件使用redux状态,因为您会回复它,并且希望Marie作为您的数据,并使用第二个组件的反应状态,因为您希望将April作为您的数据。
很高兴知道在什么时候使用。
时间
的不同片段的状态都持续了不同的时间量。我松散归类时间到这些组:
短期:将在您的应用程序迅速改变数据 - 本地店这种类型的数据作出反应状态
中期:数据很可能会导致坚持在您的应用程序一段时间 - 存储状态的终极版店内
长期:应该持续多次访问您的网站之间数据 - 存储在别处可能给数据库服务器检查或到本地存储
这究竟是什么在我的脑子很乱。感谢您的整洁干净的解释。现在我完全清除了。再次感谢。 – Balasubramanian
我也不确定,但我遵循上面的概念。我们不应该把所有数据都放在一起。非常感谢。 –