【问题标题】:What "data" should you pass with React context你应该通过 React 上下文传递什么“数据”
【发布时间】:2022-10-12 21:28:04
【问题描述】:

React 文档说context is for passing data around without prop drilling

我通常认为“数据”将是某种状态。 您可能希望将上下文用于哪些其他类型的数据?

具体来说,我们有一个服务层对象,它有一堆与 API 和外部库交互的方法。在上下文中包装这些对象有什么好处吗?

它们似乎工作正常,只是像任何常规导入一样访问它们,但同事们说它们应该被包装在上下文中。

【问题讨论】:

    标签: reactjs react-hooks


    【解决方案1】:

    上下文对于共享不会经常在组件之间更改的数据很有用,从而避免了道具钻探。

    例如,假设您有一个模态组件,并且您希望能够在许多组件中控制模态的打开状态,您可能希望为您的模态组件提供一个上下文(react-modal)

    对于您关于在上下文中包装服务的好处的问题,没有真正的答案,这取决于您的项目结构和状态管理, 如果您请求使用基于上下文的数据(令牌、缓存或 id),为什么不使用,但如果您使用其他状态管理系统并且您的服务依赖它,我会说没有理由将您的服务包装在上下文中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-07-26
      • 1970-01-01
      • 2011-09-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-12
      • 2012-07-18
      相关资源
      最近更新 更多