专栏首页星流全栈还在纠结 Flux 或 Relay,或许 Redux 更适合你

还在纠结 Flux 或 Relay,或许 Redux 更适合你

在这个端应用技术膨胀的时代,每天都有一大堆框架冒出,号称解决了 XYZ 等一系列牛 X 的问题,然后过一段时间就不被提起了。但开发的应用还是需要维护的!所以选择框架时不要只顾着自己用着爽,还要想着以后别人接手时的难易度。

因为 Flux 本身约定不够细致,如何做异步、如何做同构这些非常普遍的问题,官方都没有给出详细的说明。还有 store,view 里一大堆重复代码,极速膨胀的 action 等问题。这也难免会冒出一堆“改良”性的轮子。有一些非常闪光,如 Redux,Reflux,Marty。Reflux 和 Marty 基本上只是去掉重复代码并为现有 Store,Action 增加一些灵活性,用起来比原生 Flux 上手更容易,但是总体二者没有跳出 Flux 的思想,大量依旧采用“传统”的 mixin 方式实现。如果项目不是很复杂可以试试。至于 Relay,由于需要后端 GraphQL 支持,对于采用 REST 接口开发的遗留项目和前后端分离的大团队来说成本切换有点高。

现在开始说今天的主角 Redux。Redux 由 Flux 演变而来,后来受 Elm 启发,去掉了 Flux 的复杂性,到现在越来越自成一派,甚至已经有了 Angular 的实现。最近开始把团队旧的纯 Flux 开发项目逐步往 Redux 上迁移。Redux 还是秉承了 Flux 单向数据流、Store is the single source of truth 的思想,这两点略过。下面谈一下使用 Redux 过程中的其它感受。

特性和优点

  • 文档清晰,编码统一
  • State, State, State -> Store
  • Reducer
  • Action

不足或不便

  • 组件应尽可能无状态化
  • 轮训和 WebSocket 请求的处理

本文分享自微信公众号 - 星流全栈(MeteorFullStack),作者:Cam@SF

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2016-02-06

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 如何Meteor中轻松使用Webpack

    时见疏星
  • 编程语言盛宴:IEEE Spectrum最新排行,大数据类是赢家

    时见疏星
  • 2016 JavaScript 技术栈展望

    时见疏星
  • 「前端架构」Redux vs.MobX的权威指南

    大型应用程序的前端管理是最难解决的问题之一。虽然有几种方法可以解决状态管理问题,但Redux和MobX是两个最流行的外部库,用于解决前端应用程序中的状态管理问题...

    首席架构师智库
  • CTF---Web入门第十三题 拐弯抹角

    拐弯抹角分值:10 来源: cwk32 难度:易 参与人数:5765人 Get Flag:2089人 答题人数:2143人 解题通过率:97% 如何欺骗服务...

    Angel_Kitty
  • 测试

    摘要:本文通过断点追溯源码的方式,来逐步展示SpringBoot的核心功能实现原理:自动化配置;

    IT云清
  • Thinkphp5 如何隐藏入口文件index.php(URL重写)

    路由在框架中的作用打个比方的话,路由好比是WEB应用的总调度室,对于访问的URL地址,路由可以拒绝或者接受某个URL请求,并进行分发调度,而且还有一个副作用是因...

    砸漏
  • 线下体验购物是电商禁区吗?

    有个朋友曾告诉我,如果以后要投资物业,千万别投资商铺,在电子商务的冲击下以后没人会到实体店购物,实体店将沦为试衣间。看了TCL最近搞的一个巡展活动,我觉得那位朋...

    罗超频道
  • LVS-NAT负载均衡

    安装nfs 提供RPC支持的服务为rpcbind 提供NFS共享的服务为nfs 注意:先启动rpc服务,再启动nfs服务

    剧终
  • Go语言函数间传递切片的问题

    Go 语言函数间传递切片,也是在函数间以值传递的方式进行的,由于切片的大小比较小,在函数间复制和传递的成本是比较低的。

    runzhliu

扫码关注云+社区

领取腾讯云代金券