Vue.js 有什么缺点? - V2EX
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 25393 次点击
    这是一个创建于 3266 天前的主题,其中的信息可能已经有所发展或是发生改变。
    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 隔离的很好了,基本不用自己操心配置了
    momo1999
        6
    momo1999  
       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     Solana     1181 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 28ms UTC 17:48 PVG 01:48 LAX 09:48 JFK 12:48
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86