【发布时间】:2014-09-30 21:44:53
【问题描述】:
我之前发现在创建新的 mixin 时可以扩展 mixin,如下所示:
App.SomeNewMixin = Ember.Mixin.create(App.SomeOldMixin, {
someMethod: function() { return true; }
});
现在我正在尝试使用两个现有的 mixin,但似乎 Mixin.create 只支持 2 个参数。
App.SomeNewMixin = Ember.Mixin.create(App.SomeOldMixinOne, App.SomeOldMixinTwo, {
someMethod: function() { // No access to methods defined in SomeOldMixinOne }
});
这似乎是 Ember Mixins 的一个严重限制。 Ember 文档几乎没有涵盖 Ember.Mixin,所以我不确定如何继续。我已经尝试在 SomeNewMixin 的 init 函数中使用 Ember.Mixin.apply,也无济于事。
App.SomeNewMixin = Ember.Mixin.create({
init: function() {
this._super();
this.apply(App.SomeOldMixinOne);
this.apply(App.SomeOldMixinTwo);
}
someMethod: function() { return true; }
});
任何关于可能解决方案的见解将不胜感激!
【问题讨论】: