最近几个月由于工作原因,比较深入折腾了React,对下面这篇文章深有感触,为身边勇敢踏入React和React Native这个大坑的小伙伴点个赞。
前端技术这几年发展太快了,目前比较主流的框架是React,AngularJS 1.3-2.0, Vue.js,其中React的生态最复杂。 React引入了太多新技术和库,基本上颠覆了前端开发的传统习惯,一个Demo项目都会用到几百个npm包,js语法现在默认是用ES6,实际上我们很多项目都是ES5,ES6,ES7代码共存。语法层面还不只是JavaScript ES6/ES7,还有Flow和TypeScript这2个不同的为js引入数据类型的语言,目前Chrome浏览器只能支持到ES6的大部分功能,React项目需要转换成ES5才能保证比较好的浏览器兼容性。因此只能通过Babel,Webpack,gulp等构建工具做转换和处理,最后生成浏览器可以运行的代码,这其中Babel,Webpack的配置还比较复杂,也需要研究。
React只是做了组件化,需要搭配很多东西才能做一个完整的项目, 例如ReactRouter,ReactDOM,实现Flux架构的Redux,Reflux等框架,所以最后一个普通项目引入1000个npm包是很正常的事情。然后就是升级的问题,React现在更新速度很快,各个npm组件更新的更快,让项目在频繁的更新中保存稳定也一件不容易的事情。
下面是转载的文章了,写的挺精彩,感同身受啊,这里直接给出链接吧
作者:方应杭
链接:https://zhuanlan.zhihu.com/p/22782487