为什么会有人说 Vue.js 简单?

2016-07-22 19:18:52 +08:00
 ianva
作为用过 angular 1 和 react 开发过很多项目的人来看, vue 的概念上比 angular 1 还多,从 compontent , directive 的概念上来说一个概念就超过一个 react 的概念,组件设计的复杂度上讲也是。
用过 angular directive 写过很多组件的人来说,用过 react 就觉得 angular 组件设计过渡,项目组件化其实很难,很多概念来的还不如 react 简简单单的概念写的方便
而 Vue 是延续了很多设计,真搞不懂为啥会有人说 Vue 简单,就是因为有中文文档和 generator ?
49829 次点击
所在节点    前端开发
134 条回复
SourceMan
2016-07-22 19:26:24 +08:00
因为它就是简单呀
Troevil
2016-07-22 19:27:08 +08:00
概念多不代表它复杂,说它简单因为它用起来真的简单
cxbig
2016-07-22 19:30:14 +08:00
相对其他框架来说简单太多。
cxbig
2016-07-22 19:32:02 +08:00
React 也不过是最近半年变得调理清楚一些,之前不同的人用不同的框架,代码结构千差万别。
ianva
2016-07-22 19:33:16 +08:00
@Troevil 如果我想实现一个 dialog 能谈一谈用 Vue 实现的思路么,从被调用,用外部数据填充,标签指定填充布局,到弹出插入 dom ,外部数据和 dialog 渲染的先后此讯,到调用的方式
用他写个组件的时候其实并不是这么如愿的方便
zhuangtongfa
2016-07-22 19:34:13 +08:00
因为 vue 本身就简单,你觉得 react 简单那是因为你还没接触 react 的全家桶,react 没全家桶的话真的很难用,vue 一个框架就相当于 react+全家桶了,虽然 vue 也有全家桶.
你要比较的话就拿 react 全家桶和 vue 全家桶比,不要只拿 react 和 vue 比,你比比就知道 vue 真的才叫简单
ianva
2016-07-22 19:34:22 +08:00
@cxbig react 的整个概念就是一个 vue compontent 的概念而且还要简单很多,从这个角度讲 vue 一点都不简单
ianva
2016-07-22 19:35:18 +08:00
@zhuangtongfa 全家桶当然都会用过,但如果 vue 想达到 react 全家桶的维护性,那必然比 react 全家桶还要复杂
ianva
2016-07-22 19:35:45 +08:00
@zhuangtongfa 另外谁说 react 必须要全家桶才能用的?
ianva
2016-07-22 19:36:21 +08:00
这么看其实多数人就用个双向绑定的功能
zhuangtongfa
2016-07-22 19:37:25 +08:00
@ianva 不用全家桶就残疾框架
skksdd
2016-07-22 19:37:34 +08:00
其实楼主不是来问为什么的
zhuangtongfa
2016-07-22 19:38:06 +08:00
@ianva react 就一个 V 层,你开发就只开发 V?
ianva
2016-07-22 19:38:21 +08:00
@zhuangtongfa react 只是一个库, flux 是个框架,用 vue 双向绑定为目的的人群来看 react 并不逊色
ianva
2016-07-22 19:39:49 +08:00
@zhuangtongfa vue 本身也不能算个框架,他提供的功能并不提供整个项目的建筑学,从这角度讲他不具备 flux 这样优异的维护性,充其量也就是个 V 层
Troevil
2016-07-22 19:40:27 +08:00
@ianva 闹了半天你是来求组件实现思路的 囧..
具体实现得具体想,你问的这么详细我也没空具体跟你讲,毕竟我也没这时间, 但是就你说的 dialog 我个人觉得 vue 实现还是很简单的, 调用 数据填充 不就是 vue 组件化的功能吗? 至于什么时候渲染 以及 插入 dom ,那个 vue 的组件 生命周期的各个过程有关 ,建议直接查文档了解就可以了, 调用方式 静态 直接 vue webpack 编译写 tag 或者 动态的话 官方有例子 , 可以动态注册 或者 动态生成组件, 总的来说官方文档看完,足够你写出东西了 ,如果你还觉得难, 那我觉得你可能得再多看看类似的前端框架
ianva
2016-07-22 19:43:44 +08:00
@Troevil 并不是组件实现,而是整个项目的组件化,从这点上讲 vue 会让他边复杂,我举例子 dialog 就是这个意思,因为涉及到整个组件的生命周期,从 dialog 本身的渲染到,内部内容的渲染顺序,还有插入 body 时的处理也就是脱离根元素,另外是内容的布局,这些方面其实实现上并不简单,而且难于拆分的更细化
作为整个项目的组件化上这些问题是非常容易碰到
如果谈简单,其实仅仅是双向绑定时候的生产力吧
zhuangtongfa
2016-07-22 19:45:00 +08:00
@ianva 但就开发体验上来说,做同样的事,vue 代码比 react 少,先不说维护性,题目问的是为什么 vue 简单不是吗?react 组件通信本身就麻烦,不引入 flux 的话很难处理,而且题目问的是 vue 为什么简单,vue 开发同样的东西不是比 react 简单多了吗
ianva
2016-07-22 19:45:35 +08:00
@Troevil 从这个角度看, react 非常自然的去拆分项目和组件,而 vue 通常不会这么想,因为本身的组件设计其实是很复杂的,这点在用 angular 的时候非常明显
ianva
2016-07-22 19:47:00 +08:00
@zhuangtongfa vue 的组件通信上其实是很难于维护的, angular 上开过负载项目时候就因此遇到过问题,大量撞他的维护上仅仅是事件通讯解决不好,如果不引入 flux 其实 react 当然也可以 eventbus 的方式做

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/294276

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX