找回密码
 立即注册
首页 业界区 业界 从 jQuery → V/R → Lit:前端架构的 15 年轮回 ...

从 jQuery → V/R → Lit:前端架构的 15 年轮回

章绮云 5 小时前
前端这十几年的发展,看起来是“日新月异”,
但如果把时间线拉长,会发现一件很有意思的事:
我们其实在不断“绕一大圈”,
最后又慢慢回到了浏览器本身。
这篇文章不讲 API、不讲语法,
只讲一件事:
前端架构思想是如何演进的?
Lit / Web Components 处在什么位置?
一、什么叫轮回?

前端架构的演进,本质上是:
“对浏览器不信任 → 完全接管 → 重新信任浏览器”。
二、第一阶段:jQuery 时代(2006 ~ 2012)

2.1 当年的真实问题

那个年代的前端只有三样东西:

  • HTML(静态)
  • CSS(基本布局)
  • JS(DOM 操作)
浏览器:

  • API 不统一
  • 兼容性极差
  • 几乎没有“组件”概念
2.2 jQuery 做了什么?

jQuery 的核心价值只有一句话:
“抹平浏览器差异,简化 DOM 操作”
  1. $('#btn').addClass('active')
复制代码
它解决的是:

  • 选择器
  • 事件绑定
  • DOM 操作
  • Ajax
2.3 jQuery 的“隐性模型”

虽然大家当年没意识到,但 jQuery 有一个非常重要的特点:
状态 = DOM
  1. if ($('#btn').hasClass('active')) { ... }
复制代码
DOM 既是:

  • 数据来源
  • 渲染结果
  • 状态容器
2.4 问题开始显现

当页面复杂度上来后:

  • 状态散落在 DOM 各处
  • 逻辑和 UI 强耦合
  • 修改一个功能容易“牵一发动全身”
这为下一阶段埋下了伏笔。
三、第二阶段:React / Vue 时代(2013 ~ 2020)

3.1 核心反思:DOM 不可信

这一代框架的共同起点是:
“不要直接操作 DOM”
于是出现了:

  • Virtual DOM
  • 单向数据流
  • 状态驱动视图
3.2 关键思想转变

从:
  1. 操作 DOM → DOM 改变
复制代码
变成:
  1. 状态改变 → 重新 render → DOM 更新
复制代码
DOM 被彻底“降级”为:
渲染结果,而不是状态源
3.3 React / Vue 做对了什么?

它们解决了当时最致命的问题:

  • 状态集中管理
  • UI 可预测
  • 组件化
  • 规模化协作
这一步极其重要,也是前端工程化的真正起点。
3.4 但代价是什么?

随着时间推移,问题开始显现:

  • 运行时越来越重
  • 抽象层级越来越多
  • 应用必须“跑在框架里”
  • 框架升级成本极高
慢慢地,我们开始:
不信任浏览器,而只信任框架
四、第三阶段:全面接管浏览器

这是一个很多人没有意识到的阶段。
4.1 框架做了什么?


  • 接管事件系统(Synthetic Event)
  • 接管更新调度
  • 接管组件模型
  • 接管生命周期
浏览器只负责:
“执行 JS”
4.2 一个危险信号

当你发现:

  • 离开框架就不会写前端
  • 不清楚 DOM 何时更新
  • 不理解浏览器事件模型
这其实是一个架构警告
五、第四阶段:重新回到浏览器(2019 ~ 至今)

这就是 Lit / Web Components 出现的时代背景。
5.1 浏览器这十年发生了什么?

很多人低估了浏览器的进化:

  • Custom Elements
  • Shadow DOM
  • ES Modules
  • Template / Slot
  • 原生性能优化
浏览器已经具备组件能力
5.2 Lit 的态度非常明确

“浏览器已经足够强,
框架不应该再全面接管。”

所以 Lit 的选择是:

  • 不接管事件
  • 不接管调度
  • 不接管生命周期
  • 只做最小增强
六、Lit 与 jQuery:一个惊人的相似点

这是一个很多人没意识到的事实
6.1 相似之处

jQueryLit信任 DOM信任 DOM轻量轻量无强生态无强生态易被集成易被集成6.2 本质差异

jQuery:
操作 DOM
Lit:
声明 DOM + 精确更新
这是 15 年演进换来的认知升级
七、这不是“倒退”,而是“螺旋上升”

有人会说:
“这不就是回到原生吗?”
这是误解。
真正的区别是:

  • 我们经历过复杂度
  • 理解过规模化
  • 吃过抽象的红利与代价
现在选择“回归”,是有意识的取舍
八、为什么 Lit 没有取代 React / Vue?

因为它们解决的是不同层级的问题
层级工具应用层React / Vue组件层Lit平台层浏览器它们并不是“竞争关系”。
九、一个 IImportant 的时代判断

未来前端不会“只剩一个框架”,
而是“分层更加清晰”。


  • 应用继续用成熟框架
  • 组件 / 基础设施回归 Web 标准
  • 浏览器能力不断增强
十、总结

如果选择学习 Lit / Web Components,
并不是为了“追新”,而是为了:

  • 理解前端的边界
  • 理解浏览器的能力
  • 理解架构取舍
十一、SOOOOOO

真正成熟的前端工程,
不是不断叠加抽象,
而是知道什么时候该停下来。

来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

相关推荐

您需要登录后才可以回帖 登录 | 立即注册