我通过this article发现了Ember.js。
粗略地看一下文档,可以提供一个非常令人印象深刻的工具。粗略地看一眼源代码就会发现一个怪物。源代码的“已编译”版本近15000行代码,而GIT repo则散布着各种文件。
如果我觉得我至少无法全面了解代码,我不想开始学习JavaScript框架。 (jQuery或Backbone的质量之一是代码库相对简单。)
您对导航(并最终理解)代码有什么建议吗?
答案 0 :(得分:31)
Ember.js包含几个包,其中包括最相关的包:
它还有一些捆绑的依赖项:
Metal由几种基础技术组成:观察者,绑定,计算属性和运行循环。
运行时提供了Ember对象系统以及一些有用的类。对象系统采用金属实现的许多基础技术构建,但以更清洁的方式向应用程序开发人员公开。
ember-views包非常不言自明,它是建立在运行时之上的Ember视图系统。最重要的是,ember-handlebars包依赖于ember-views,在Handlebars模板系统之上提供自动更新模板。
ember-routing包提供负责维护应用程序结构和状态的系统。它允许将视图连接到应用程序的特定部分以及在状态之间转换。有关详细信息,请参阅Router code source
有关把手的更多信息,请查看Handlebars website。
Metamorph是由Yehuda和Tom编写的一个小型库,它为Ember提供了更新DOM特定部分的能力,从而实现了Ember的DOM绑定功能。