0

3つのミックスインを持つクラスの例:

Object = Ember.Object.extend( mixin1, mixin2, mixin3 {
                 init: function(){
                     this._super();
                     var myMixins = this.gatherMixins();
                 },

                 gatherMixins: function(){
                     // what goes in here?
                 }

 });
4

1 に答える 1

1

これを行うことができます:

gatherMixins: function() {
  Ember.Mixin.mixins(this).forEach(function (mixin) {
    Ember.Logger.log(mixin);
  });
}

フィドル

次のコードの平和は、ミックスインのすべてのプロパティをリストします

var mixinKeys = Ember.A();
Ember.Mixin.mixins(this).forEach(function (mixin) {
  Ember.Logger.log('mixin: ' + mixin.toString());     
  mixin.keys().forEach(function (key) {
    if (!mixinKeys.contains(key)) {
      mixinKeys.pushObject(key);
    }
  });
});
mixinKeys.forEach(function(key) {
  Ember.Logger.log(key);            
});
于 2012-10-29T16:00:46.247 に答える