首页 文章

React Flux:如果有状态,如何更新存储只能在组件渲染后确定

提问于
浏览
1

我是FLUX / REACT的新手,我对FLUX有一些疑问 .

这是场景:

我有一个商店“A”和组件“B”,A传递数据到“B”然后B渲染它,但在B渲染后,我必须将它的HTML内容高度保存到某个地方(理想情况下,应该在“A”中) .

根据FLUX,数据流应该是单向的并存储在商店中,但我无法知道B渲染之前的高度 .

这对我来说就像一个悖论......

我应该怎么做?

1 回答

  • 1

    要实现此目的,您的Component应该使用新的高度从ActionCreator调度Action .

    您的商店应该在Dispatcher中注册并相应地更新 . 然后,您的商店将发出您的组件应订阅的更改事件,并根据需要更新其状态 .

    由于组件无法进行重大更改,因此不会重新渲染,您的流程将结束 .

    这是它在视觉上的外观(View = Controller,忽略此流程的API框):
    Flux Controller dispatching Actions

    https://scotch.io/tutorials/getting-to-know-flux-the-react-js-architecture

相关问题