Ember 对象可以使用多个 mixins 吗?我认为 mixin 相当于 Java 中的接口,在这种情况下,应该提供在这里实现许多 mixin -
App.Movie = Ember.Object.extend(App.FirstMixin, { .. });
如果也有 SecondMixin,那么这个对象如何使用它?
Ember 对象可以使用多个 mixins 吗?我认为 mixin 相当于 Java 中的接口,在这种情况下,应该提供在这里实现许多 mixin -
App.Movie = Ember.Object.extend(App.FirstMixin, { .. });
如果也有 SecondMixin,那么这个对象如何使用它?
是的,当然可以。看看著名的 ArrayController 类的代码,例如:
Ember.ArrayController = Ember.ArrayProxy.extend(Ember.ControllerMixin,
Ember.SortableMixin, {
....
});
实际上 mixin可以用作 Java 接口的等价物,但 mixin 并不限于接口定义。Mixins 是多重继承的一种方式,还可以为使用它们的类提供属性和方法实现。因此,接口的概念仅限于 mixin 概念。