Ember での現在の実装 (v1.0.0-pre.2) では、次のようになります。
var LoggingMixin = Ember.Mixin.create({
LOGGING: false,
log: function (message) {
if (this.LOGGING) {
Ember.Logger.log(logMessage);
}
}
});
var SomeNamespace = Ember.Namespace.create(LoggingMixin, {
});
これにより、 を呼び出すことができましたSomeNamespace.log('message')
。これは Ember.js RC1 では機能しないようです。Javascript レポート: TypeError: SomeNamespace.log is not a function
.
代わりに、RC1 で機能しているように見えるのは次のとおりです。
var SomeNamespace = Ember.Namespace.extend(LoggingMixin);
var someNamesapce = SomeNamespace.create();
呼び出しsomeNamespace.log('message')
が機能するようになりました。
私の質問は、ミックスインの作成/動作が RC1 で変更されたのか、それとも元のコードに何か欠けているのかということです。