开发者社区> 问答> 正文

react的优点是什么呀

最近需要用react。 学习了一下,感觉这框架太麻烦了。简单的功能代码多不说,而且一个值可能需要跨好几个组件传过来。如果大项目,可能还需要redux来管理state,这样就又引入了reducer, store和action。这么麻烦的框架,肯定有优点吧,不然也不可能这么火。哪位大手给说说react的优点在哪?

展开
收起
a123456678 2016-03-11 18:41:29 4399 0
4 条回答
写回答
取消 提交回答
  • 提供了函数式风格的前端解决思路

    2019-07-17 18:59:53
    赞同 展开评论 打赏
  • React + Redux这一套确实很容易产生大量的样板代码,但是基于virtrual diff 和 redux/flux之类状态管理,很容易让你的代码保持可维护和扩展性。所以主要还是看题主需要用来做什么项目,不一定非要用react

    2019-07-17 18:59:52
    赞同 展开评论 打赏
  • Javascript,WebGL,React

    优点就是,能够 hold 住非常大型的单页应用。

    缺点是,小项目开发也变得复杂了很多,学习成本比较高。

    2019-07-17 18:59:52
    赞同 展开评论 打赏
  • 首先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)

    可能还有其他,不过我现在能想到就这些吧,是否符合你自己预期,自己多实践,有了心得之后再来回顾这些好处更有价值

    2019-07-17 18:59:52
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
React Native 全量化实践 立即下载
利用编译将 Vue 组件转成 React 组件 立即下载
React Native项目实战优化之路 立即下载