首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Relay vs Redux vs Apollo with GraphQL和React-Native

Relay vs Redux vs Apollo with GraphQL和React-Native
EN

Stack Overflow用户
提问于 2017-04-09 21:03:16
回答 1查看 10.7K关注 0票数 28

我必须从头开始一个新的(web +原生)项目(中型应用程序)。由于过多的JS框架和实现,特别是在过去的几年里,我对我通常使用的堆栈有了第二个怀疑。

我一直在前端使用react + redux,在后端使用Node和MongoDB,通过REST API进行通信。

对于这个新项目,我决定使用React-Native + React Native For Web + Node + PostgreSQL。然而,我想知道我应该使用哪个框架来获取数据和管理状态/存储。

到目前为止,redux对我来说效果很好。然而,由于JS演变的本质。我对我过去一直使用的go堆栈有点怀疑。

如果我使用下面的堆栈,有什么优点和缺点

代码语言:javascript
运行
复制
React-Native + React-Native-For-Web + Redux + GraphQL + Node + PostgreSQL


React-Native + React-Native-For-Web + Relay + GraphQL + Node + PostgreSQL


React-Native + React-Native-For-Web + Apollo + GraphQL + Node + PostgreSQL

我读过很多文章,阐述了使用每种框架的好处,但内容和文章的数量有点吓人。我明白没有正确或错误的答案。然而,如果知道上面提到的哪一个堆栈能够很好地结合在一起,那就太好了--学习曲线少,文档好,可维护性好,变通方法少。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-04-10 16:19:15

我认为如果你来自React + Redux的背景,那么阿波罗应该是你的选择!

注意:如果你是GraphQL的新手,我建议你访问How to GraphQL,在那里你可以找到关于中继和阿波罗的教程。

以下是几条信息:

  • Relay非常强大,但也非常复杂,并且有一个值得注意的学习曲线。
  • Apollo构建在Redux之上,尽管这与你作为开发人员并不相关,因为商店对你是隐藏的。然而,在Redux中使用类似的概念,例如,使用updateQueries.
  • It's更新存储也非常简单,如果你想使用realtime subscriptions
  • I管理状态,而不是使用combine the Apollo store with your own Redux store从服务器
  • 缓存数据,你也可以使用Apollo,因为这两个框架在发送查询、突变、缓存和UI更新时,都从你的肩膀上卸下了显着的工作。但是,如果您正在寻找更轻量级的GraphQL客户端,则可能需要考虑一下Lokka

看看这个比较中继和阿波罗的in-depth article,了解更多的背景信息。

如果你想了解更多关于中继和阿波罗的知识,请访问教程网站。

顺便说一句,如果你不想自己构建,后端的另一个选择是Graphcool (免责声明:我为他们工作:)。

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

https://stackoverflow.com/questions/43306989

复制
相关文章

相似问题

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