作为新手,react+hooks先用起来
需要单页了。router搞起来
需要 ui了,antd搞起来
最复杂的是数据流,用到这步你会感受到,props在传值通讯上有点不爽,什么兄弟传值,爷孙传值,曾孙传值,跨页面传值。这个时候,你也可以层层传递,但是感觉麻烦,于是有另一种思路,用发布订阅模式。但是仍然有点不爽。
社区提供的最好解是redux,配合的库是react-redux,redux,react-redux-router.而redux解决的是同步的,异步的里面是thunk胜出。
另外的数据流解决方案还是saga,还有个啥忘了。
create react app里面是啥都没有的,只是个超级简单的脚手架,为了绑定路由和数据流,你又得在此基础上用什么wire之类的包装过得脚手架,这个脚手架还得提供配置帮你搞定繁琐的webpack的配置问题。
而umi和dva,前者是脚手架,后者是在saga基础上的数据流方案。好处是,用起来不错,写法简单,容易理解,帮你把异步同步这块代码组织搞好,不用自己想办法。umi还有其他的,比如,你可以创建自己的ui库,现在更名为father的包,还有其他的各种。提供测试,调试等,确实是个不错的。还有什么request,这个坑太多,不用,还是axios自己封装的好,还有异常处理机制等。
写得很乱,综合一下。
数据流你想怎么玩都可以,都差不多是这一套,如果需要更复杂的,还可以上rx。一般场景又不想自己折腾dva和umi是可以满足你的要求的。
目前,颗粒小的物件用hooks开发,其他的我们还是选择的saga数据流方案,不过用什么无所谓,看场景咯
对了,还有容器组件在dva这里不好测试,谨慎,如果需要写测试的话