让我们通过构建一个现代JavaScript框架来学习它是如何工作的

在我的日常工作中,我致力于一个 JavaScript 框架(LWC)。尽管我已经在这个项目上工作了将近三年,但我仍然觉得自己是一个业余爱好者。当我阅读有关更大的框架世界的信息时,常常因为不了解的事情太多而感到不知所措。

公司主营业务:成都网站建设、网站制作、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联推出博野免费做网站回馈大家。

然而,学习事物的最佳方法之一是亲自动手构建。而且,我们要继续保持那些 “距上一个 JavaScript 框架的天数” 模因的持续。因此,让我们来编写我们自己的现代 JavaScript 框架吧!

什么是“现代 JavaScript 框架”?

React 是一个出色的框架,我不是来贬低它的。但在这篇文章中,“现代 JavaScript 框架”指的是“React 时代后的框架” - 即 Lit、Solid、Svelte、Vue 等。

由于 React 在前端领域占据主导地位已久,每个更新的框架都在其阴影下成长。这些框架都受到了 React 的很大启发,但它们在演进中以出奇的相似方式远离了 React。尽管 React 本身一直在创新,但我发现后来的框架在现今更类似于彼此,而不是 React。

为了保持简单,我还将避免讨论像 Astro、Marko 和 Qwik 这样以服务器为先的框架。这些框架在其自身的领域表现出色,但与以客户端为重点的框架相比,它们来自稍微不同的思维传统。因此,在本文中,我们只讨论客户端渲染。

现代框架有哪些特点?

从我的角度来看,React 时代后的框架都集中在相同的基本理念上:

  1. 使用响应性(例如 signals)进行 DOM 更新。
  2. 使用克隆的模板进行 DOM 渲染。
  3. 使用像