关于redux的疑问

  1. 如果不使用redux,而是将状态都保存在顶层组件,但是给每个组件都实现两个接口,getState()和setState(),不是更加方便?

  2. 面试时遇到的问题,觉得有点不知道怎么回答,当时理解的是可能对代码的可读性和可维护性有影响。

不知道还有什么其他的方面,请大佬们帮忙解答。


潇潇雨雨
浏览 441回答 1
1回答

收到一只叮咚

我这么跟你说吧,切身体会。我之前就是像你说的不用redux,将状态交给顶层组件统一管理。但是随着项目的深入,问题就出来了。我当时嵌套了3层组件,最下层是一个自己封装的日历组件,当我改变日期等操作想改变state时,你说我该怎么办?没错我必须从第一层组件起一层层吧改变state的方法当做props往下传,也就是你说的每个组件给一个方法。然而这只是一个3层嵌套,如果更多的组件相互嵌套。项目将变得不再可控。其他人也看不懂你代码了。我们用React用Vue用ng是为了什么?其实jquery就能很方便的实现几乎所有业务需求。但是会很杂乱,不可维护。既然如此,我们就需要用redux,vuex来更好的规范管理你的状态。redux作者说过:当你需要使用redux的时候,你自然而然会找到它,就是这个道理。如果你的项目没有让你感到写的很难受,大可不必引入redux
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript