围绕数据绑定库(如 AngularJS/KnockoutJS)创建抽象

Creating abstraction around data-binding libraries like AngularJS/KnockoutJS

本文关键字:KnockoutJS 创建 抽象 AngularJS 数据绑定      更新时间:2023-09-26

我刚刚看完了 Nicholas Zakas 关于可扩展 JavaScript 应用程序架构的视频 (http://www.youtube.com/watch?v=vXjVFPosQHw(
我正在从事一个涉及jQuery +(AngularJS或KnockoutJS(的项目。我们可以考虑围绕jQuery创建抽象,这样我就可以根据客户的要求将jQuery替换为Dojo。但是我们如何围绕 AngularJS 或 KNOCKOUTJ 等库创建抽象,以便在我选择或替换这些库中的任何一个时,我的应用程序就不那么容易进行大量修改。

感谢您的阅读。

由于 Angular 的declarativeimperative性质,库的抽象在视图模板中会很棘手。你不应该把AngularJS看作是一个库,而更像是一个框架,它是一个更大的技术堆栈的一部分。

围绕jQuery或Dojo创建抽象是有意义的,因为它们试图完成同样的事情,操作DOM或更改HTML。

但是,Angular 和 Knockout 是客户端框架。每个框架的目标完全不同。因此,围绕它们进行抽象对我来说并没有多大意义。

我会弄清楚你的客户想要什么,仔细选择符合要求的框架,并坚持下去。