V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
2503
V2EX  ›  程序员

技术使用感受: JQuery 和 Vue

  •  
  •   2503 · 2023-04-13 17:26:33 +08:00 · 13952 次点击
    这是一个创建于 387 天前的主题,其中的信息可能已经有所发展或是发生改变。

    关于 JQuery 和 Vue 代表的 MVVM 框架。

    我本人是比较喜欢 JQuery ,感觉 Vue 让一切变得特别的复杂难操作,是我自己的问题,还是也有和我一样的想法。

    如果你深度的使用过 JQuery ,和深度的使用过 Vue ,希望你能分享一下感受。

    第 1 条附言  ·  2023-04-13 22:24:15 +08:00
    写一下我自己的看法

    Vue 并不是 JQuery 的替代品,他们是两种完全不同的东西。

    他们会一直同时存在。Vue 可以说是让前端更简单,更适合团队作战,因为 Vue 的本质就是一个后端的数据渲染器。把后端的数据映射到前端,把用户的数据映射到后端,但也只是渲染数据方便,仅此而已。

    如果我们用 Vue 做一个 taobao.com ,那会发现,有很多效果有 Vue 太复杂了。Vue 总感觉就适合那种 后端 Admin 界面。

    我最近做了一个系统 Admin 用回了 JQuery ,我感觉太自由了,我在数据列表界面做各种自定义交互工作,一下就好,没有任何限制,又看了目前主流的 PC 站点,都没有使用 MVVM 。所以怀疑前端科技树是不是被带歪了。

    以上是我的偏见,我本人不是前端。
    124 条回复    2023-05-02 17:11:32 +08:00
    1  2  
    molvqingtai
        101
    molvqingtai  
       2023-04-14 12:57:29 +08:00
    op 提到 taobao ,其实 taobao.com 也使用了现代框架 preact
    royzxq
        102
    royzxq  
       2023-04-14 13:11:35 +08:00
    能用和能工程化是两个不同的概念,不过 op 不是前端的话就无所谓了。
    HAYWAEL
        103
    HAYWAEL  
       2023-04-14 13:49:44 +08:00
    正常来说,想要修改页面,是先修改数据,然后通过 DOM API 来修改 DOM 。
    jq 本质上是简化了对 DOM API 的 操作,而 vue 或 React 是将 DOM API 这一步直接做了,这样 来说,开发只需要关注数据就好了。
    lchynn
        104
    lchynn  
       2023-04-14 15:02:20 +08:00
    觉得楼主需要的是一个非常轻量级的现代化的 JS 框架, 类似 alpine.js 这种的。JQuery 不够现代化。
    superedlimited
        105
    superedlimited  
       2023-04-14 15:13:03 +08:00
    昨天看到这个贴子,以为多牛逼多资深的前端。。。
    刚刚看到 append ,好吧,什么垃圾帖子,以后再看到类似的一律 block
    star7th
        106
    star7th  
       2023-04-14 15:18:15 +08:00
    主要是你做的页面,还不够复杂。所以体现不出组件化的好处。
    但你不是前端,所以你也只能接触到简单场景。对于你而言,用 juery 也不是一个很坏的选择。
    对于专业前端,遇到的场景复杂了,用组件化分解会更提升开发效率和维护效率
    cuzfinal
        107
    cuzfinal  
       2023-04-14 15:39:33 +08:00
    vue 先不论,没想到现在还有人讨论 jQuery
    zcreg
        108
    zcreg  
       2023-04-14 15:44:47 +08:00
    要比较也是 react 与 vue, 现在还在用 Jquery 说明代码还是写得少了
    Terry05
        109
    Terry05  
       2023-04-14 15:47:29 +08:00
    作为两者都深度生产的情况,应该说 mvvm 的模式,在生产力方面完全碾压 jquery
    BiChengfei
        110
    BiChengfei  
       2023-04-14 15:53:02 +08:00
    JQuery ,前端还能拿这么多钱吗
    前端越乱,前端越贵
    MRG0
        111
    MRG0  
       2023-04-14 15:59:33 +08:00
    @kop1989smurf 有的,某些屎山
    QlanQ
        112
    QlanQ  
       2023-04-14 16:05:27 +08:00
    @Seanfuck 啊,还有这种情况?多层次的时候,生成 dom 不需要遍历吗?一个数据的 true 和 false 的切换,就可以让 dom 切换,不知道要方便多少呀
    CodeMak1r
        113
    CodeMak1r  
       2023-04-14 16:19:49 +08:00
    刚好俩个项目开发都用过 感觉 jQuery 没有 vue 摸鱼舒服
    momobear
        114
    momobear  
       2023-04-14 16:20:22 +08:00
    不是一个时代的产物 没什么可比性
    sgiyy
        115
    sgiyy  
       2023-04-14 16:29:37 +08:00
    老生常谈的问题了。你就没怎么接触现代的前端,说白了你只是更熟悉 jQuery 而已,熟悉了你那套后端模板增删改查的功能和写法而已;

    你只要熟悉下 Vue 或者 React 那套逻辑,才知道写代码多么省心,原本复杂的功能也很容易实现。

    一个从 jQuery 时代过来的前端 er
    hxy100
        116
    hxy100  
       2023-04-14 16:34:17 +08:00
    你的目标是不是只有 PC 端界面,你多写几个移动端为主的项目看看,你就知道组件化开发有多方便了。
    thetbw
        117
    thetbw  
       2023-04-14 16:37:09 +08:00
    逻辑太多 jquery 有点不太好维护,不过前段时间自己用 jquery 写了一个上传组件,感觉 jquery 蛮好用的。但是别人来看我这个代码,绝对头疼。而 vue 写的项目,就没这个烦恼(或者说少一点)
    dongtingyue
        118
    dongtingyue  
       2023-04-14 17:12:57 +08:00
    vue 数据展示,酷炫效果还是在 vue 生命周期里纯手搓 js 。
    yankebupt
        119
    yankebupt  
       2023-04-15 00:11:03 +08:00
    jQuery js 80 多 k
    vue js 才 20 多 k
    有时我一直在想到底谁才更 lightweight...
    loginv2
        120
    loginv2  
       2023-04-15 08:52:49 +08:00
    哈哈, 我两个一起混用, 改数据绑定的时候 Vue 出来干活,需要操作 DOM 的时候直接一个$过去 解决问题,估计有人看见我这么写 要高血压了
    inshua
        121
    inshua  
       2023-04-19 18:11:44 +08:00
    我也有这个疑问,像 react vue 这一套基于 vdom 的对于渲染数据 -> UI 确实挺高效,但它不直接摸 DOM 元素,这种做做表单还行,做真正的 GUI 是行不通或者说很蹩脚的。
    比如 web 地图,一堆瓦片,数据只有中心经纬度和比例尺;
    HTML 小游戏(直接 dom 实现,非 canvas 的),用 DOM 做精灵,地图什么的也是瓦片,不愿操作 DOM ;
    Office ?试想用 react 这套怎么做编辑器,靠这个怎么去实现 office365 或 google docs?

    欢迎反驳,迫切希望看到一些有说服力的例证。
    inshua
        122
    inshua  
       2023-04-19 18:15:56 +08:00
    > HTML 小游戏(直接 dom 实现,非 canvas 的),用 DOM 做精灵,地图什么的也是瓦片,不愿操作 DOM 是搞不定的 ,刷新数据实现精灵移动动画?想想就可怕;
    zhengfan2016
        123
    zhengfan2016  
       2023-04-24 16:47:38 +08:00
    @inshua 大部分虚拟 dom 是有提供操作真实 dom 的功能的,依稀记得 react 还是哪个框架在虚拟 dom 的<div>上加上 ref=a ,也就是<div ref="a"/>,js 就可以通过 a.dom.style = ....... 进行操作真实 dom ,但是需要在虚拟 Dom 的 onMount 生命周期后才能操作
    inshua
        124
    inshua  
       2023-05-02 17:11:32 +08:00
    @zhengfan2016 是的,这我知道,但是很显然这属于画蛇添脚。

    我认为问题起源于 HTML 确实不具备组件功能,我做过一个框架使 HTML 具备组件能力,但是我很难说服 react 用户,当然 react 用户也很难说服我,确实 vdom 出表单很轻松,但是出个表单毕竟不值得 all-in 。
    1  2  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2388 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 11:08 · PVG 19:08 · LAX 04:08 · JFK 07:08
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.