V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
PeiXyJ
V2EX  ›  程序员

为什么感觉 React 编写起来比 Vue 复杂很多?

  •  
  •   PeiXyJ · 4 小时 4 分钟前 · 2739 次点击

    我在编写一个前端页面,在考虑使用 Vue 和 React 在尝试使用 React 后感觉 React 编写的页面非常的乱,因为太多太多的业务操作都感觉写在了 <Html/> 中而不是和 Vue 一样进行了 脚本 template style 进行拆分,不过我都是 AI 写的,是不是编写的习惯有问题?

    40 条回复    2025-12-18 17:54:53 +08:00
    dushixiang
        1
    dushixiang  
       4 小时 1 分钟前   ❤️ 1
    写 React 不要把全部的逻辑放在一个文件里面,抽象成组件再引用进来就没那么乱了
    kongkx
        2
    kongkx  
       4 小时 0 分钟前 via iPhone   ❤️ 1
    贴段代码对比看看?让大伙看看你写得怎么样
    NerbraskaGuy
        3
    NerbraskaGuy  
       3 小时 58 分钟前
    你说的是 jsx ,实际 vue3 也支持 jsx 的写法只不过不那么普遍
    airqj
        4
    airqj  
       3 小时 58 分钟前   ❤️ 5
    自信点,把感觉去掉
    React 就是比 Vue 复杂
    ShaoYuanNuo
        5
    ShaoYuanNuo  
       3 小时 57 分钟前
    同样的代码 react 就是比 vue 复杂啊
    livib
        6
    livib  
       3 小时 56 分钟前
    唯手熟尔
    shintendo
        7
    shintendo  
       3 小时 53 分钟前
    是要复杂一些,但不是你说的原因,而是 1 语法糖少 2 心智模型不太传统,至于 SFC 拆分不是什么大区别
    66beta
        8
    66beta  
       3 小时 50 分钟前
    习惯就好了,用 React 写就不要留着 vue 的思维了
    cvooc
        9
    cvooc  
       3 小时 42 分钟前   ❤️ 3
    react 对团队规范代码管理这些要求高很多, 说好听是百花齐放, 说难听是群魔乱舞.

    光一个状态管理,几个月就蹦出来一个新的宣传更先进解决某某问题. 团队摇摆不定的话,真的会存在"学不动的情况".

    另外一点是代码管理, vue 好一点是至少 template/script/style 三大件互不干扰,新手在不熟悉也容易搞出太抽象的代码.
    react 则像上面说的,非常极其特别容易整出来要么一个超大文件, 要么好好的需求清晰的业务组件拆的稀碎成十几个只有一个引用的文件,完全没人能看懂.
    Aleks
        10
    Aleks  
       3 小时 35 分钟前
    React 在理解上确实心智负担会重一些,Vue 更符合直觉好上手一点。但是论生态还是 React 更胜一筹。对大部分个人项目来讲,其实都够用了,都是工具。
    iv8d
        11
    iv8d  
       3 小时 34 分钟前
    一个纯手搓,一个有各种各样的规范要求。当年 angular 也是这样,严重影响推广。vue 这点就很吃香,一直在改进优化。
    PeiXyJ
        12
    PeiXyJ  
    OP
       3 小时 32 分钟前
    @kongkx 纯 AI 写的就不嫌丑了
    penzi
        13
    penzi  
       3 小时 32 分钟前
    因为你 vue 写多了,已经中毒了
    PeiXyJ
        14
    PeiXyJ  
    OP
       3 小时 31 分钟前
    @Aleks 主要还是看生态,现在 AI 化了感觉啥都生态绑定用个 VO 竟然不支持 Vue...
    liaohongxing
        15
    liaohongxing  
       3 小时 30 分钟前   ❤️ 1
    因为你已经完全适应了 template/script/style 三大件, 你已不适应 jsx, 这就不谈别人乱了。
    visper
        16
    visper  
       3 小时 29 分钟前   ❤️ 1
    react 更灵活。对不同的人来说,可能写得很不一样,不同的封装方式啊之类的。写得好的可能会很优雅,但是多数来说,确实会更乱。不要怀疑,就是代码更乱,你看好久看不出来在页面上的点击出现问题的代码可能不知道它封装在哪一个函数里面了。
    PeiXyJ
        17
    PeiXyJ  
    OP
       3 小时 28 分钟前
    @liaohongxing 好像是这个道理,直接先入为主了
    ccccccc
        18
    ccccccc  
       3 小时 21 分钟前
    你们说的 vue 那么简单,那试试一段时间不写 vue ,看看是否需要翻官方文档看语法
    Hilong
        19
    Hilong  
       3 小时 4 分钟前
    @ccccccc 还真不用,自从 16 年看了 vue2 的文档,后面升级了 vue3 也只简单看了一下 api 的改动,后面完全不用看文档,本身文档也没啥东西
    wu67
        20
    wu67  
       2 小时 53 分钟前 via Android
    vue 更直觉,react 感觉整个文件都在写 js ,部分 html 还要 map 出来...
    okakuyang
        21
    okakuyang  
       2 小时 48 分钟前
    vue 生态能和 react 生态比一比吗?感觉就是在捡 react 的剩饭。
    craftsmanship
        22
    craftsmanship  
       2 小时 38 分钟前 via Android
    怎么梦回几年前的感觉,,前端都凉透了还在争论 RV 吗🤓
    skallz
        23
    skallz  
       2 小时 11 分钟前
    react 写习惯了还好,初学者可能会存在一个问题,就是它的设计哲学不符合大部分人的直觉,比如你修改一个变量,但是你在修改完成后立刻获取它,它并不一定是最新值,而是推荐你用 useEffect 或者 useRef 去拿到最新值
    cfancc
        24
    cfancc  
       2 小时 11 分钟前
    确实如此,写 react 累,要干好多活
    crocoBaby
        25
    crocoBaby  
       2 小时 3 分钟前
    中小厂写 react 已经找不到工作了
    codek1986
        26
    codek1986  
       2 小时 3 分钟前
    主做后端,vue react 都用,感觉还是 react 写起来舒服
    twofox
        27
    twofox  
       1 小时 47 分钟前
    写 react 的时候我觉得 vue 很好用,写 vue 的时候我觉得 react 很好用
    knowckx
        28
    knowckx  
       1 小时 31 分钟前
    我已经从 react 转 svelte 了 react 还是麻烦
    edisonwong
        29
    edisonwong  
       1 小时 30 分钟前
    react 轮子没的说,我遇到很多小众组件基本只有 react 有...难绷
    写 vue 心智成本低
    bbbblue
        30
    bbbblue  
       1 小时 22 分钟前
    react 要多拆组件 他的心智负担的确大一点 但其实用习惯了就那几个钩子
    现在 95%的组件和页面都让 AI 写了 自己把控一下组件粒度/复用 处理一下 AI 有时解决不了的循环依赖
    dust2
        31
    dust2  
       1 小时 18 分钟前
    @skallz vue 这种也是吧
    QlanQ
        32
    QlanQ  
       1 小时 14 分钟前
    php 模板时代过来的人,看了 react 那种 用 js 去生成 html 的 方式,看着就难受
    好不容易 php 不用和 html 和 js 混编了,结果 react 来了个 js 去生成 html 的混编
    MJNick
        33
    MJNick  
       1 小时 10 分钟前
    @ccccccc 是的,vue 时间一长就不记得那些语法糖了。react 就不需要记那么多语法糖和规则,只要你 JavaScript 足够熟练,写 react 很快的,时间长了也不会忘记。
    SkywalkerJi
        34
    SkywalkerJi  
       1 小时 2 分钟前
    @QlanQ 每个时代都有自己的 php
    skallz
        35
    skallz  
       39 分钟前
    @dust2 vue 并不是,vue 你同步修改了 ref 定义的变量后,后续直接取值它一定是最新的,不需要在类似 watch 的钩子里面读取最新值
    vaporSpace
        36
    vaporSpace  
       35 分钟前
    vue 和 react 没啥优劣之分,有点基础的,都是几天就上手了。但是之前找工作有一点特别烦,用 react 的公司是不介意只用过 vue 的,只要基础好的就行。用 vue 的公司一定要招用过 vue 的,我说一天就上手,也不行,hr 那一层就卡死了。可能在有些面试官眼里,用 vue 的门槛很高吧
    kakki
        37
    kakki  
       33 分钟前
    html js css 混编也是一种高内聚的方式.早期直接内嵌不习惯的原因是因为编辑器弱智,现代编辑器支持个内嵌 HTML 跟喝水一样简单,又不用你人眼 debug.完全就是傲慢与偏见.
    svendson
        38
    svendson  
       31 分钟前
    react 经常性的一个页面干完全部活儿 哈哈哈
    location123
        39
    location123  
       24 分钟前
    react 得将组件分的很细 不要在一个文件里 现在一边写 React 一边学 Compose 就很舒服
    dufu1991
        40
    dufu1991  
       6 分钟前
    别对比 React 和 Vue 了,都没 Svelte 舒服,这是生态不够。不过 AI 时代来了,项目中的组件基本上可以自己写了。
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   4496 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 10:00 · PVG 18:00 · LAX 02:00 · JFK 05:00
    ♥ Do have faith in what you're doing.