大家什么情况下用 Redux 呢

2024-07-13 11:59:54 +08:00
 ZoBoat

我觉得解决的最大问题是状态的封装,把它当做更好用的 reducer

其次是复杂业务需要状态共享

8022 次点击
所在节点    React
54 条回复
enchilada2020
2024-07-13 19:00:39 +08:00
@lee88688 事件触发器 saga 和 command 能再详细说说吗 没太理解 最好能有例子或者相关文章之类的
Jeremial
2024-07-13 19:00:41 +08:00
之前我们 react 项目里禁止使用 redux
从一开始就感觉这个很不好用,页面没复杂到一定程序,useState, useContext 那一套完全够用了。

现在回过头来看,当时的决定也算是挺正确的
skyworker
2024-07-13 19:09:45 +08:00
@ZoBoat 我们自己的内部项目. 2.0 版本引入 redux, 后来 3.0 版本, 大家一致同意把这个玩意从代码中全部删除, 再也不用这玩意了

比如状态关联, 很多项目中大部分状态关联都是 crud, 可能有一小部分全局状态关联稍微复杂点, 需要 redux.

但是引入 redux 的后果就是, 为了解决"1%的复杂状态管理", 导致其他本来很简单的"99%"的代码, 都变得复杂无比.

更烦人的是(可能我们用的版本不对或者 dva 的问题), 只要修改 redux 的 model, npm 的热加载无效, 必须重新跑一次 npm start 才行, 有点类似 java 中, 改了个 model, 整个一堆微服务都要重启的感觉, 这就太浪费时间了. 后端我都嫌 java 麻烦, 再搞一套更麻烦的前端吗?
BeiChuanAlex
2024-07-13 19:09:52 +08:00
@lee88688 #19 同意,redux 有使用的场景,具体看业务需求,而不是为了用而用。
IvanLi127
2024-07-13 20:02:54 +08:00
大概是盖屎山的时候吧。目前只遇到了 umijs,里面的 dva 基于 redux ,难受加倍。现在方案很多,没满十岁的项目应该都有更优秀的状态管理方案。
chf007
2024-07-13 21:17:13 +08:00
都什么年代了
wpzz
2024-07-13 21:52:39 +08:00
在多次交接后,代码难度呈现"指数级"膨胀。

因为每个团队的代码规范,技术能力,写好 redux 需要很好的代码能力。

推荐 「 zustand 」 和 「 mobx 」(新版| hooks 版,老版| class 也是一坨)
lee88688
2024-07-13 23:55:52 +08:00
@enchilada2020 saga 可以看看 redux-saga 的文档,还有他遵循的 saga 思想(有一篇论文)。command 看一下 Command pattern 。
eachann
2024-07-14 00:05:25 +08:00
还是 zustand 把,我从 vue 过来,稍微过了一下 redux 文档,感觉比 react 还难
anoninz
2024-07-14 00:52:57 +08:00
只有接手老项目的时候用 redux 。

如果想用强类型的全局状态管理试试 mobx-state-tree
IamJ
2024-07-14 01:31:55 +08:00
zustand 或者 jotai
magicdawn
2024-07-14 04:55:07 +08:00
valtio
Amose2024
2024-07-14 05:14:42 +08:00
我一直在用 Redux 啊,页面传参给某个弹出框的 component 的时候,用它感觉挺舒服呢。还有就是分页查询的时候,用它存 lastKey 。不然还真不知道能用啥啊
Amose2024
2024-07-14 05:16:31 +08:00
如果 Redux 没有用的话,Vue 的 Pinia 也一样?
liximomo
2024-07-14 08:05:03 +08:00
什么情况下都不用,一直在用 [doura]( https://github.com/dourajs/doura)
roundRobin
2024-07-14 08:38:12 +08:00
用过一次,果断劝退了
no13bus
2024-07-14 09:14:25 +08:00
@Amose2024 正常传参就行了吧。这个需要用 redux 吗
Vogan
2024-07-14 09:36:08 +08:00
redux 不算过度封装。但属于设计哲学大于实际编码场景,流程、概念一个不能少把你限制地死死的。让开发者觉得用上 redux 就是带着手铐开发。
simo
2024-07-14 09:56:57 +08:00
react 啊,20 年左右的项目了,当时给前端团队定的 mobx ,觉得 redux 太啰嗦了。
现在不知道 react 项目架构怎么选型,好几年没用过 react 。
w4ngzhen
2024-07-14 10:56:04 +08:00
个人的理解,redux 不适合业务项目,适合一些底层框架使用。举个例子,比如做一个某些领域的低代码底层,使用 redux 可以很好的控制低开中的数据流。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1057001

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX