我注意到在Ember CLI(v0.1.12)生成的app.js
文件中,他们正在使用:
var App = Ember.Application.extend({...})
但在introduction guide中,他们正在使用:
window.App = Ember.Application.create({...});
创建Ember应用程序的这两种(创建与扩展)方式之间的结果是否存在差异?
答案 0 :(得分:2)
正如Ember文档extend
Creates a new subclass,中所述
create
Creates an instance of a class
主要区别在于使用extend
你可以覆盖方法,但仍然可以访问你的实现 父类通过调用特殊的_super()方法
但create
无法承担这种能力。
链接的文档具有良好的代码示例,专门针对您的问题。
见
第17行的create()创建了App.Soldier类的实例。 第8行的extend()创建了App.Person的子类。任何实例 App.Person类没有march()方法。
和引用的代码程序。