你应该在使用redux时使用this.setState()吗?

Mar*_*1ni 102 flux reactjs redux

你应该this.setState()在使用redux时使用吗?或者你应该总是派遣行动并依靠道具?

mjh*_*jhm 133

setState对于具有本地显示状态但与全局应用程序无关的UI组件,可以明确使用.例如,表示特定下拉菜单是否被主动显示的布尔值不需要处于全局状态,因此菜单组件的状态更方便地控制它.

其他示例可能包括层次结构的折叠显示中的线的折叠/展开状态.或者可能是选项卡导航中当前选定的选项卡.但是,在这两个示例中,您仍可以选择全局处理UI状态.例如,如果您希望在浏览器存储中保持展开/折叠状态,以便通过页面刷新保留它,则这是必要的.

在实践中,通常最容易实现具有本地状态的UI元素,并根据需要将它们重构为全局状态.

  • 为了跟进这一点,相关的Redux FAQ条目强调**使用`setState`是完全正常的**:http://redux.js.org/docs/faq/OrganizingState.html#organizing-state-only-终极版状态 (22认同)
  • 如果你要切换或使用服务器端渲染,我认为你应该总是使用Redux (2认同)