dva 与 vuex 的 dispatch 使用问题

发布于 2022-09-13 00:07:41 字数 264 浏览 24 评论 0

背景:
因为之前都是vue的项目,但是最近有react的项目;在查看相关demo的时候产生了一些疑问;

问题:
一般我自己的项目使用vuex的话,是为了管理公共状态,一些公共状态数据会dispatch,正常的接口请求获取的数据还是放在页面或者组件内部;
但是目前查看一些基于Umi +dva 的项目时,许多接口请求的数据也都是通过dispatch effect 改变状态的,我直接请求数据然后setState 改变状态应该也可以,为什么要通过effects 去改变呢?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

命硬 2022-09-20 00:07:41

保持redux是纯函数,处理副作用是在effect中处理,例如请求,处理数据等等

享受孤独 2022-09-20 00:07:41

『我直接请求数据然后setState 改变状态应该也可以,为什么要通过effects 去改变呢』

这个问题就要问你自己了,在 vue 的组件里,直接发请求拿数据,然后直接赋值在 data 上也能刷新组件视图,干嘛用 vuexdispatch

是不是一样的问题?工具的使用源于工程上需求,如果你并没有这个需求,那自然感觉用这个工具是多余的

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文