我应该如何从reactjs flux应用程序中的状态更改触发UI渲染更新?

时间:2015-11-08 22:37:26

标签: reactjs flux

如果我在登录表单字段中进行字段验证,如果它缺少必填字段,我应该在渲染视图中通过

触发错误消息

一个。更新组件中的this.state.errorMessage,然后以某种方式触发渲染?

OR

湾引发loginError操作,然后使用errormessage更新存储,然后触发状态更新,然后触发组件中的渲染

1 个答案:

答案 0 :(得分:1)

两种方式都有效。这取决于您是否还有其他组件也应该听取field验证状态中的更改:

  • 如果,则应通过调用loginError执行完整的flux周期 action,它将更新商店,导致状态更改正常 传播到关注field的所有相关组件 验证状态。

  • 如果不是,您的field验证状态更改已本地化 只是当前的component,那么它只是没有错 组件中的setState()仅触发render() 本身。

但是我建议您执行完整的flux周期(action-> store->视图),因为以后更容易进行修改。