2013-03-25 46 views
0

在我們的灰燼(V1.0.0-pre.2)當前實現,我們有這樣的:灰燼JS RC1 - 混入方法/屬性不適用

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')確實工作。

所以我的問題是mixin的創建/行爲在RC1中是否發生了變化,或者我是否錯過了某些w.r.t.原始代碼。

回答

1

這似乎是在灰燼1.0.0-pre.3重大更改(2013年1月17日)

  • 重大更改:Ember.Object.create行爲就像setProperties。對舊行爲使用createWithMixins