V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
cheetah
V2EX  ›  JavaScript

Vue.js 有什么缺点?

  •  
  •   cheetah · 2017-01-20 14:45:42 +08:00 · 24581 次点击
    这是一个创建于 2859 天前的主题,其中的信息可能已经有所发展或是发生改变。
    Vue.js 的优点我们已经听了很多了,我自己实际用起来也确实很好用。那么 Vue.js 有哪些缺点呢?最好基于 Vue 2 来讲
    43 条回复    2018-04-10 10:14:55 +08:00
    HLT
        1
    HLT  
       2017-01-20 14:48:47 +08:00
    同问
    jellybool
        2
    jellybool  
       2017-01-20 14:50:45 +08:00 via iPhone
    社区,生态,大公司支持....

    在代码层面我觉得该有的解决方案都有了。
    Arrowing
        3
    Arrowing  
       2017-01-20 15:09:27 +08:00
    要学习 webpack 等包管理工具,要学习 ES6 ,配合这些起来的话,入门比较难。
    Wangxf
        4
    Wangxf  
       2017-01-20 15:16:36 +08:00   ❤️ 2
    感觉 template 不好 debug , react 的话就是 js
    cheetah
        5
    cheetah  
    OP
       2017-01-20 15:21:13 +08:00
    @Arrowing 我觉得 vue-cli 把 webpack 隔离的很好了,基本不用自己操心配置了
    shuax
        6
    shuax  
       2017-01-20 15:25:20 +08:00
    中国人做的,而中国人又喜欢内斗,所以会有很多人喷
    zhuce1234578888
        7
    zhuce1234578888  
       2017-01-20 15:30:45 +08:00
    目前感觉生态不太成熟,比如 编辑器里的语法提示 不太完善, 而这个又对效率很重要
    Rice
        8
    Rice  
       2017-01-20 16:26:39 +08:00
    IDE 或编辑器的语法提示插件数量和质量与 React 不能比。
    生态没有 React 全。
    不过做小项目特别快。
    k00baa
        9
    k00baa  
       2017-01-20 16:48:47 +08:00
    一些控件设置的值无法绑定相应的 model ,比如 typehead
    2zH
        10
    2zH  
       2017-01-20 19:32:46 +08:00
    @Wangxf Vue 应该有 jsx 的支持
    bigbyto
        11
    bigbyto  
       2017-01-20 19:36:01 +08:00
    主要还是社区吧,这点是无法与 react 和 angular 相比的。另外 stackoverflow 相关的问题相对也少的可怜。
    LancerComet
        12
    LancerComet  
       2017-01-20 19:57:34 +08:00
    感觉除了 .vue 的感知问题没有明显的毛病
    visonnn
        13
    visonnn  
       2017-01-20 21:37:56 +08:00 via Android
    编辑器支持还比较弱

    网上资料相对少一点

    其他都还好,开发起来很舒服
    Wangxf
        14
    Wangxf  
       2017-01-20 21:43:54 +08:00
    @2zH 用 jsx 写 vue 那我为何不去用 react 呢?
    Mark24
        15
    Mark24  
       2017-01-20 21:47:18 +08:00
    希望资料再完善一点。再出点官方高阶教程,最佳实践啥的。免去探索时间。
    jsq2627
        16
    jsq2627  
       2017-01-20 21:56:14 +08:00
    编辑器支持太差
    loveship
        17
    loveship  
       2017-01-20 22:08:39 +08:00 via Android
    逼格不高
    janxin
        18
    janxin  
       2017-01-20 23:33:23 +08:00
    和某些模版引擎存在冲突
    402645707
        19
    402645707  
       2017-01-20 23:36:55 +08:00
    对初学者不友好(逃
    moonlit7seas
        20
    moonlit7seas  
       2017-01-20 23:38:10 +08:00
    不要作,要感恩, vue2.0 我打满分
    sunjourney
        21
    sunjourney  
       2017-01-21 00:01:49 +08:00
    fragments instance 这么难忍的问题没人说? 当然了, React 也有。
    coffeedeveloper
        22
    coffeedeveloper  
       2017-01-21 00:27:42 +08:00   ❤️ 2
    也稍微来评价一下 Vue 的缺点吧。如果说 Vue1 和 React 比还是有一定的差距的,到了 Vue2 基本上可以说是没有什么差距了(在我看来)。

    1 、 Vue 给我感觉最大的缺点就是当初为了追赶上现有框架, Vue 给予了整个生态环境的官方配套技术方案 Vuex 、 VueRouter 。这是一件好事,不过也是一种双刃剑。如果让大家去找能够替代 Vuex 、 VueRouter 的其他框架,要求 star 过千,文档齐全,更新频率较快,有教程的。。你会发现一个都没有。现在市面上大家广为人知关于 Vue 相关的都是 UI 组件。非 UI 组件类型的不多。而在 2014-2015 年,我用 React 的时候可以说是百花齐放,一堆有的没的 flux 框架出现,现在处于垄断地位的 Redux ,也是优胜劣汰之后的结果。 React 方面能够有更多的第二选择,而 Vue 目前是缺乏“第二选择”的。

    2 、 React 在 Facebook 的大力推广下,学习 React 能够带来比 Vue 更多的技术、资源上面的红利。最典型的莫过于 ReactNative ,虽然说 Vue 已经开始弄 Weex 了。可是 Weex 能否追赶上 ReactNative 还是一个未知数。同样的,在技术岗位上面,接受 React 的公司目前来说也是比 Vue 多的。

    3 、 Vue 不缺入门教程,可是很缺乏高阶教程与文档。同样的还有书籍。

    4 、用 Vue 去实现同一套需求,可以有 N 种写法。这是一件好事,不过很容易造成代码风格不统一所带来的维护困难。比如说对于多逻辑分支的情况下,用 jsx 去实现会远远比用 template 的方式优雅和清晰,可是却会让你的代码看上去风格差异异常明显。而在一些小的点上,你也会去过多的去考虑是用 computed 好,还是 method 好。诸如此类。

    5 、正如楼上的说,如果你需要去 debug template 渲染模板的话, 你会发现非常麻烦。

    其他想到再补充。最后,如果你让我在 React 和 Vue 之间选择的话,我还是会选择 Vue 。哇卡卡卡
    wph95
        23
    wph95  
       2017-01-21 10:40:33 +08:00
    1. 生态和 react 比差太多,想按需求找个库(比如 drag , heatmap ),基本都是 react 的 , ng 也有可能有, vue 有的可能性很小。
    2. ide 支持不足, webstorm 写 react 炒鸡爽, vue 只能是写。 reformat 提示什么的都木有
    jiyinyiyong
        24
    jiyinyiyong  
       2017-01-21 11:19:33 +08:00 via Android
    以前写 react ,现在自己写 respo ,遇到奇怪的行为可以打断点,其实也就是高阶函数嘛,变量都在 scope 里,某些东西绑到了 this 也可以从顺着访问,有时候懒得看文档也还是能明白自己错在哪。写 vue 的时候我得全程开着文档啊,整个自己实现了一遍 DSL ,偶尔写错自己写就晕了,现在基本都反应过来我一定是哪个地方没有按照文档写,然后感觉跟文档上对照看哪错了。类型检查,运行时审查,以前用惯的东西不能直接玩了。
    hm910705
        25
    hm910705  
       2017-01-21 11:30:31 +08:00
    @coffeedeveloper 强烈赞同~
    wdhwg001
        26
    wdhwg001  
       2017-01-21 12:37:39 +08:00
    template 的问题。
    举个例子的话,比如 jade/pug 作为 template 的时候,其中绑定的语法依然只能按照 Vue 的风格去写 mustache ,不能按照 jade/pug 的风格。
    wizardoz
        27
    wizardoz  
       2017-01-21 13:05:36 +08:00
    .vue 文件感觉不太美
    JamesRuan
        28
    JamesRuan  
       2017-01-21 13:42:53 +08:00
    @jiyinyiyong 严重同意
    debug 烂,内部实现黑科技,再怎么好学我也不会用了。
    zhuangtongfa
        29
    zhuangtongfa  
       2017-01-21 13:47:54 +08:00
    最大的缺点是 star 没 react 少,造成一部分人对 vue 产生偏见
    zhuangtongfa
        30
    zhuangtongfa  
       2017-01-21 13:48:10 +08:00
    @zhuangtongfa 打错了,没 react 多
    whwei
        31
    whwei  
       2017-01-21 16:40:09 +08:00
    Wangxf
        32
    Wangxf  
       2017-01-21 18:26:35 +08:00
    按照现在的形式,最好学 react 或者 react , vue 两个都学,你现在去任何一家互联网公司 react 都是你避不开的话题,没有多少公司只用 vue 的,要么就是 react 和 vue 都有,要么就是 react
    thomaspaine
        33
    thomaspaine  
       2017-01-21 20:08:46 +08:00
    编辑器的支持吧_(:з」∠)_ 没提示感觉写的要死了
    guokeke
        34
    guokeke  
       2017-01-22 12:47:43 +08:00 via Android
    @jiyinyiyong 嗯。开发体验低。
    Aben
        35
    Aben  
       2017-01-22 17:56:18 +08:00
    补充 2 条:
    1. 我非常反感类 ng 指令
    2. vuex 维护可变数据容易出现非 reactive data
    oysun
        36
    oysun  
       2017-01-22 18:34:40 +08:00 via Android
    Vue 编辑代码提示可以看看这个 https://github.com/OYsun/vscode-VueHelper
    notreami
        37
    notreami  
       2017-01-22 21:12:05 +08:00   ❤️ 1
    有一个严重的缺点,个人崇拜主义太强,坚决不能说 Vue 有问题,有缺陷,否则尤大会亲自过来反驳,并招来一批粉丝对骂。
    rqzheng2008
        38
    rqzheng2008  
       2017-01-23 10:23:51 +08:00 via iPhone
    ls 加一,国内说 vue 不好,跟说 tfboys 不好一样,一群人上来微博咬你
    qweweretrt515
        39
    qweweretrt515  
       2017-03-04 00:10:47 +08:00
    生态和 angular 、 react 比起来差了些,估计 2 年内都比较难追上
    zhuangtongfa
        40
    zhuangtongfa  
       2017-03-06 17:03:28 +08:00
    @qweweretrt515 看一眼 JavaScript 的 trending 吧,vue 每天的 star 都比 react 多几十,照这趋势,一年 star 就超过 react
    frankynwa
        41
    frankynwa  
       2017-04-01 17:13:09 +08:00
    我就想知道 vue 如何像 react 一样网组建里批量塞 props?
    elone
        42
    elone  
       2017-04-13 23:41:00 +08:00 via Android
    @zhuangtongfa 感觉还是国人多的原因。
    supmain
        43
    supmain  
       2018-04-10 10:14:55 +08:00
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2975 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 14:51 · PVG 22:51 · LAX 06:51 · JFK 09:51
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.