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

How should I trigger a UI render update from a state change in a reactjs flux app?

如果我在登录表单字段中进行字段验证,如果它缺少必填字段,我应该通过以下任一方式在呈现的视图中触发错误消息

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

b。引发 loginError 操作,然后使用错误消息更新商店并触发状态更新,然后在组件中呈现

两种方式都行。这取决于您是否有其他组件也应该监听您的 field 验证状态的变化:

  • 如果是,那么你应该通过调用 loginError 来完成完整的 flux 循环 action,这将更新商店,导致状态更改正确 传播到所有关心 field 的相关组件 验证状态。

  • 如果不是,您的 field 验证状态更改将本地化为 只是当前的component,那么只是 setState() 在组件内并且只触发 render() 本身。

不过,我建议您执行完整的 flux 循环(操作->存储->视图),因为以后进行修改会更容易。