为了账号安全,请及时绑定邮箱和手机立即绑定

如果我的 Redux Store 中的状态是可观察的,我应该在每个需要它的组件中订阅它还是在一个地方

如果我的 Redux Store 中的状态是可观察的,我应该在每个需要它的组件中订阅它还是在一个地方

隔江千里 2022-07-21 21:34:37
目前,当用户登录时,我会在需要用户状态的每个组件中订阅我的 Redux Store 中的用户状态。我想在多个地方访问用户状态,例如:我的应用程序中的侧边栏 - 获取个人资料图片、用户名或 ID需要用户 ID 从数据库中检索数据的服务如果我的用户状态是可观察的,我应该在每个需要知道用户 ID 的组件和服务中订阅它还是只在一个地方订阅?
查看完整描述

1 回答

?
天涯尽头无女友

TA贡献1831条经验 获得超9个赞

答案有几点:

您不需要订阅整个状态。您需要使用 selector 订阅商店的特定“切片” createSelector。您可以在任何地方订阅它。

但是......关于良好建筑的几句话。将组件分为两类:“智能”和“哑”是一种很好的做法。

“智能” - 是负责数据解析并通过输入将其传递给子级的容器。在此处订阅状态更改。

“哑”组件 - 是您的应用程序中更细化的部分。他们应该通过输入获取数据并通过输出发出事件。并且里面只包含一些特定的逻辑。

这样,拥有良好的应用程序结构并在不同部分之间划分职责会容易得多。


查看完整回答
反对 回复 2022-07-21
  • 1 回答
  • 0 关注
  • 85 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信