javascript - react的优点是什么呀
问题描述
最近需要用react。 学习了一下,感觉这框架太麻烦了。简单的功能代码多不说,而且一个值可能需要跨好几个组件传过来。如果大项目,可能还需要redux来管理state,这样就又引入了reducer, store和action。这么麻烦的框架,肯定有优点吧,不然也不可能这么火。哪位大手给说说react的优点在哪?
首先react
通过介绍新的声明式语法JSX
来重新定义视图开发,优点其实官网就有,不过我可以简单说两句:
第一,学会了react
以及这个JSX
语法,你不光可以通过react写web
;也可以通过react-native写ios
或者android
的应用;甚至可以通过react-blessed写terminal
可视化应用;当然也可以通过react-native-desktop写桌面应用。因为JSX
这种声明式语法实际是在构建一个抽象的视图层,这种抽象可以通过不同适配器适配到各种显示终端,这总够屌吧?
第二,说回到web
版的react
,她有virtual dom
,这个东西的好处是减少DOM
操作,减少DOM
操作的目的是提高浏览器的渲染性能,这听起来也够屌吧?
第三,她倡导使用flux
模式来进行组件间数据传输,这种做法叫unidirectional data flow
(单向数据流),单向数据流的好处是与之前angularJS
提出的two-way data binding
相比较而言,因为单向,所以各种变化都是可预计、可控制的。不像two-way data binding
那样,变化一但复杂起来,大家都互相触发变化,到最后一个地方变了,你根本猜不出来她还会导致其他什么地方跟着一起变。这个需要大量实践才能有所感受,如果你初学,那听听就算了,不必死磕。
第四,她倡导使用immutable object
(不可变数据),不可变的好处是大大节约了脏检查的消耗,有兴趣可以看我翻译的[译]JavaScript中的不可变性(Immutability)
可能还有其他,不过我现在能想到就这些吧,是否符合你自己预期,自己多实践,有了心得之后再来回顾这些好处更有价值
这篇关于javascript - react的优点是什么呀的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!