是什么原因淘汰了 jQuery?

2019-06-23 11:20:09 +08:00
wy1993  wy1993

作为初学者,对这个问题感到困惑

11394 次点击
所在节点   前端开发  前端开发
66 条回复
binux
binux
2019-06-23 11:28:30 +08:00
需求变复杂了
levon
levon
2019-06-23 11:29:55 +08:00
移动端富客户端
rogwan
rogwan
2019-06-23 11:34:54 +08:00
后端 API 化,前端 SPA 化,虚拟 DOM。jquery 依旧是那把锋利的刀,只是现在前端上来就是集成工具箱。
SuperMild
SuperMild
2019-06-23 11:41:39 +08:00
以前的主流是整个页面跳转刷新,后端负责把渲染好的 html 发给前端,前端用 jQuery 之类的做一些简单处理。

后来单页面应用兴起,后端只返回 json 给前端,而前端几乎包揽了一切工作(以前业务逻辑、路由在后端,现在都移到前端了)。

你可以试试做一个稍复杂一点的单页面应用,就能明显感受到新型前端框架的好处。
kekxv
kekxv
2019-06-23 11:43:04 +08:00
别问,问就是人变懒了
shintendo
shintendo
2019-06-23 11:47:12 +08:00
前端以前是表单页面,现在是客户端应用,工程复杂度提高了,jQuery 的命令式编程就很难 hold 住了,需要声明式的虚拟 DOM 框架。
写简单的活动页面还是可以的。
shintendo
shintendo
2019-06-23 11:51:38 +08:00
“现在前端太浮躁了一年八个新框架刷存在感怀念 jQuery 一把梭的黄金年代”党还有 30 秒到达战场
peneazy
peneazy
2019-06-23 11:57:10 +08:00
前端变复杂了,业务逻辑都往前端跑
DOLLOR
DOLLOR
2019-06-23 11:59:59 +08:00
想钻研 web 底层的,直接用 DOM API,而不是 jQuery 这个经过二次封装的“库”;
想专注业务逻辑的,不如用各种框架,而不是 jQuery 这个封装不够彻底的“框架”。

而 jQuery 就在一个高不成低不就的尴尬位置,除了维护旧页面兼容 IE5 以外,已经想不到 jQuery 需要的场合了。
love
love
2019-06-23 12:09:40 +08:00
jquery 只是 dom api 的简单封装,你可以试试用 jquery 写个稍复杂交互的 web 页,会死,特别是数据直接绑定 dom 节点非常的不灵活和不直观,而上古的分离框架 backbone+jquery 组合也好不了太多,因为没有嵌套能力。

react + redux 这类模式就能很好地梳理复杂逻辑,项目再大也很清淅。
codermagefox
codermagefox
2019-06-23 12:23:06 +08:00
尝试用 Jquery 撸一个简单的页面编辑器吧.
你就懂了....
nisnaker
nisnaker
2019-06-23 12:24:30 +08:00
1、当年做前端写 js 需要兼容各种浏览器,这一点如果自己做及其恶心,jQuery 的出现相当于有了一个统一的 api,所以大火。成也风云败也风云,现在基本都是面向 chrome 开发,接口统一,jQuery 就没那么重要了。
2、jQuery 的选择器功能强大,用起来很顺手,然而现在浏览器自带了 querySelector。
3、jQuery 写动效也很方便,然而现在有了 css3。
4、很早也用 jQuery 写过 SPA,毕竟 SPA 用户体验好,然而自己维护 state 很头疼,后来的解决方法跟现在的前端框架也差不多了,也就没必要再用 jQuery 了。

我现在写一些简单的 landing page 还是会用,毕竟打开编辑器直接就能开干还是蛮爽的。
terranboy
terranboy
2019-06-23 12:25:42 +08:00
淘汰?应用场景不一样 各大门户网站哪个没有 JQuery
tonylau
tonylau
2019-06-23 12:28:49 +08:00
同 3 楼
wesnow
wesnow
2019-06-23 12:29:24 +08:00
互联网上的网站有几个不用 JQuery 的?
impl
impl
2019-06-23 12:31:29 +08:00
达尔文说,物竞天择
wd
wd
2019-06-23 12:45:25 +08:00
因为电脑配置变高了
YuTengjing
YuTengjing
2019-06-23 13:08:06 +08:00
组件化发展趋势,声明式战胜了命令式
q8164305
2019-06-23 13:12:06 +08:00
交互多了,你试试页面交互多的时候用 jq 写个试试,难度极高
garlics
2019-06-23 13:14:30 +08:00
没有双向绑定?

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

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

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

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

© 2021 V2EX