前端框架进化:从 AngularJS 到 React
1. 早期框架回顾
在前端开发的早期,有许多框架和库为后续的发展奠定了基础。
1.1 KnockoutJS
KnockoutJS 在当时是一个非常受欢迎的解决方案和优秀的库,并且相对容易进行独立测试。以下是在 KnockoutJS 中测试按钮的示例代码:
test("LikeButton", () => {
const viewModel = createViewModel({ liked: ko.observable(false) });
expect(viewModel.liked()).toBe(false);
viewModel.onClick();
expect(viewModel.liked()).toBe(true);
});
1.2 AngularJS
AngularJS 由谷歌在 2010 年开发,是一个具有开创性的 JavaScript 框架,对网页开发领域产生了重大影响。它引入了一些创新特性,这些特性在后续的库(包括 React)中都能看到其影响。
- 双向数据绑定 :这是 AngularJS 的标志性特性,极大地简化了 UI 和底层数据之间的交互。当模型(底层数据)发生变化时,视图(UI)会自动更新以反映这些变化,反之亦然。与 jQuery 等库形成鲜明对比,在 jQuery 中,开发者必须手动操作 DOM 来反映数据的变化,并捕获用户输入以更新数据。