react + redux + immutable + ES6 + webpack 的一个单页面项目

原创 cangdu 随笔 react 1250阅读 2016-11-09 18:26:39 举报
评论 ( 1 )
最新评论
cangdu 2016-11-09 18:27:25 1F

一、Virtual DOM是react的标志。虚拟DOM之所以快有两点原因:1、Javascript运行很快 2、操作真实DOM很慢。
DOM操作起来很慢很耗CPU,所以react将DOM直接写进js,再也没有html文件,所有的DOM都在js中生成并渲染。
我们不需要控制DOM如何生成如何渲染,react已经替我们做好了一切,我们只需要告诉它想要的效果,它会用最好的方法将效果渲染出来。

二、Redux是个数据管理中心,它主要的作用是实现组件之间的通信。当react组件结构树庞大,交互复杂,
组件之间的通信将会非常麻烦,因为react是单向数据流,只能通过props传入子组件,如果向上传递必须特殊处理。
redux相当于在react的最顶层加了一个数据层,所有需要共用的数据放在这里统一管理。如果项目组件不多,逻辑不复杂,redux可以不用。

三、ES6很强大,并且经过babel转换后兼容性很好。

四、webpack可以极大的提高工作效率,各种需要的功能都有,尤其是webpack-dev-server中proxy的反向代理,
实现前后端分离开发,很实用。

五、immutable定义了一种数据类型,一旦定义就不能更改,所有对数据的操作都会生成一个新的数据。
它可以极大的提高react的速度,但是它改变了数据结构,容易坑。demo是在写完之后才加上immutable,
所以每次改变以前的state为immutable,都会影响其他的数据变化,很麻烦。所以接下来项目会在一开始就使用immutable。

六、fetch是ajax最新替代技术。ajax基于事件而fetch基于Promise,更加友好,更近符合现代发展趋势。