能用angular做到的,React都可以做到么?

#1

在各种开发场景,React是否都可以完全替代Angularjs呢?
与React相比,Angular完全没有任何优势么?

#2

那当然~~angular都在重构了

#3

不是一个时代的东西
没得比

#4

React 的模式是 Flux, 接近 MVC, 数据和界面分离清晰.
Angular 的模式是 MVVM, 也有 MVC 的成分, 不过总之 MVVM 的话会带来数据和界面的绑定, 就是 ViewModel.
各有好处. 不过绝大部分 MVC 的场景, 两者应该都能实现的… 而且 React 对我们来说更好懂.

#5

受reactjs影响么?

#6

reactjs实现是否也参考了angularjs呢?

#7

ng写html属性,耦合度比较高,这个是缺点?

#8

看场景, 是否真的需要数据界面关联这么紧密?
我对 MVVM 了解没那么深. 往细节就说不清了.

#9

ng 的数据和界面绑定更加松耦好不好,跟后台约定 json 里面过来的数据,或者不需要约定,直接界面给你做好好了。而且只需要关心过来什么数据我显示什么界面好了。这个根本就不是缺点。ng 1 的缺点在于暴露太多细节给用户,比如说 scope 这些根本你就不需要给用户知道的也放到台面上让用户自己去玩,那没 mvvm 概念的当然觉得概念一箩筐。还有指令的难用。所以需要改进的我觉得就是隐藏细节以及把指令实现简单化就好了。然而这些在 ng 2 里面都解决掉了。所以有些新手上来觉得,唉,这个也没那个也没,好奇怪哦,也不足为奇,不了解历史嘛。

React 不是说做得到做不到的问题,而是太新的框架。而且实现理念完全是 mvvm 上一代的方式。你要考虑一个父節點,然后父節點改变的时候,我要给子节点设置个props,然后子节点又怎样怎样,我只想说一句,你够了啊。我个人是非常讨厌非双向绑定的,也非常讨厌 jsx 的。最起码现在非常讨厌,连个自动格式化的工具都没有。

而且作为框架的完整度来说, ng 更像一个框架,React 更像框架和库的中间半吊子。看看文档你就知道了, ng 是 测试优先,GetStart 一步一步教你怎么测试你开发出来的那坨。 React 的文档上来说的是什么,我们得在 js 里面写 html,哈!?到底谁耦合度高?如果你们团队不是牛逼团队的话,那写出来的组件一定可以呵呵呵呵了。

不过作为新人来说,技术上超越前辈的成本太高,选一个新技术,趁大腿还没拉出来,先等着,要不然吃屎都赶不上热的就是这个意思了。多学学,没坏处。

1 Like
#10

论坛发言就说点建设性的东西吧,表达讨厌去群里或者v2ex多好

React只是界面库而已,要对比最少提一提Flux

#11

这还带不允许说不喜欢的?
又或者说你为什么单独从一大段里面抽出一句来挑刺呢?
我讨厌 JSX 这种写法并不代表 Flux 就是渣渣对不?
那这样说吧,你既然那么反感我觉得 React 的 JSX 不好,
请你用你的表达方式来给新人讲讲。
你的一句没得比,难道你觉得比较有营养?
还不如叫新人去看文档,看完了就懂了呢。要论坛干毛毛。

#12

看你讲了一大堆都是情绪化的东西,怕你误导其他人而已
引用是让你意识到自己的情绪化程度

如果了解React的技术链自然知道就知道为什么没得比
你吐槽一大堆的结论还不就是“React什么都能做到,但是我就是不喜欢React的方式”
新手问问不奇怪,但是误导就不如不说了

#13

ng的事件处理要简单 用$emit/$broadcast $on 就搞定了 就象一个消息队列一样,拼字符串就行了,而react的有从属关系的上下级组件之间,相互独立的不同组件之间的通信机制不尽相同, 感觉太复杂了 如果用store处理,这个stroe是全局共享的呢, 还是归属于某个组件? 如果全局共享,那compoment里面的数据就是应该是空值,如果组件要写事件处理就没有依托了,如果归属于某个组件,那就store就又跟compoment耦合了, 但是react的组件显示逻辑就很简单,写一个Tree组件 几行代码就出来了,要用directive
如果传统的js拼html的方法,那就会变得很复杂,到现在我都还不明白怎么样从头写一个完整的directive出来,总之,两个东西刚好相反,一方的优势是另一方的劣势, ng是集权式独裁国家,一切大包大揽,model service,directive,event一应俱全,只要跟java一样做填空就行了,但是缺一样都不行,要自定义开发就难了,代码出错了就跟java一样报半屏幕的错误,但就是不知道是哪一行代码出错了,而react是民主国家,每一层完全可以根据自己的需求灵活选用,可以只用react,也可以用react +flux 或者其他的什么组合,你可以写jsx,也可以不用jsx自己写dom,怎么合适怎么来

2 Likes
#14

如果事件只对组件有意义,那么就用state,如果对应用也有意义就是store,这样理解会不会清晰点。
比如在单选框上的点击可以同时有两个语义:1 改变单选框打勾的状态,2 改变应用某个设置。这时候1就由组件内部的state状态改变而实现。
话是这么说,反正state是被封装起来的。把组件内部的state拆分开来并加上handler职能实现一个小的flux来处理组件内部的逻辑也可以。

#15

看你装逼卖弄玄虚看不过去罢了。
哦,是哦,同为 JS 框架然后出来的结论是没人能比。
然后看别人不爽挑别人的刺,我还用 guapi.js 呢。宇宙第一无人能及。
还不如楼下 @tablecell 一是一二是二列出来说说。

用 ng 能做的,我用 pure JS,用 jQuery 都能做到。你 React 做不到,那好去死了。
新人问这个明显就是想知道哪里有优势。
你是不懂还是装不懂。

#16

技术的东西有什么好装逼的……吃饭用的家伙而已。
Angular之前接触过,解决不了 我的问题 。Factory,service,DI,dirty check,再用MV×揉在一起,看不出什么解放生产力的关键所以做几个demo就弃掉了。我又没说Angular是落后的那一个 :smile:

什么东西适合自己慢慢就知道了,犯不上尝试用自己的情绪去感染别人。
对你也是一样的态度,自己去理解就知道了,带着一大堆情绪还不是要学React。

2 Likes
#17


看这个帖子中 我发的例子,左侧是treeview 右侧是inputForm 我想实现 根据分类动态添加,修改,维护 省市县的树形菜单, 如果全部事件都做在treeview,界面会变得很复杂,而且inputForm以后还会增加别的数据项,所以独立出来一个inputForm组件,那这个多级菜单的json是放在store里面,还是做为treeview的state ?

#18

如果只问框架,angular(MVW,双绑),react(V,单绑也可以做双绑),那么明显angular能做到的比React要多。
如果问具体实现,那问题应该是 能用JS做到的,JS都可以做到么?

#19

用过angular,最近体验react,感觉react在渲染方面全胜,但是易用性方面挺糟糕。

#20

各有各好的好处,看项目来用吧