首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在React中使用RecoilJS管理大型数据集?

如何在React中使用RecoilJS管理大型数据集?
EN

Stack Overflow用户
提问于 2021-07-03 20:18:13
回答 1查看 43关注 0票数 1

我有一个React应用程序,它目前使用了大约50个存储在上下文API中的变量。我想试着使用反冲作为替代方案,但我有一个问题。我是否必须将每个变量存储在它自己的原子中,然后在每次需要使用它时分别导入它,这是最佳实践吗?

有了上下文,我可以这样做:

代码语言:javascript
复制
const [appState, setAppState] = useState({
    var1: "string",
    var2: "string2",
    var3: false,
    var4: 23,
    ...
})

然后在我的上下文提供程序中使用appState和setAppState作为值。定义和导入50个单独的原子有点令人生畏。诚然,我不会同时使用所有的50个,但在使用上下文之后,它似乎仍然后退了一步。

有了后座力,我必须:

代码语言:javascript
复制
export const var1 = atom({key: "var1", default: "string",})
export const var2 = atom({key: "var2", default: "string",})
etc...

然后:

代码语言:javascript
复制
import { var1, var2, var3, ... } from './RecoilAtoms'

有没有更好的方法来做这件事?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-07-06 15:02:51

当然,您可以将其保存在一个原子中:

代码语言:javascript
复制
const appState = atom({
  key: 'appState',
  default: {
    var1: "string",
    var2: "string2",
    var3: false,
    var4: 23,
    // ...
  }
})

我不知道你说的“有没有更好的办法”是什么意思。我的猜测是,您指的是一个整体解决方案,但反冲的全部要点是分割您的全局整体整体状态,并以原子方式使用它。否则,使用反冲没有实际的好处。

所以,是的,我会把它分成几个原子。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68236201

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档