2013-09-01 14 views
7

我正在將Ember rc7項目遷移到Ember 1.0.0。我有這個不尋常的錯誤:Ember 1.0.0:Ember.State已被移入插件:https://github.com/emberjs/ember-states

Ember.State has been moved into a plugin: https://github.com/emberjs/ember-states 

我有錯誤只如果我使用Ember.js 1.0.0的組合,組合與Ember的數據0.13。如果我包含額外的餘燼狀態庫,那麼一切正常。

這個改變的原因是什麼?爲什麼我需要一個額外的庫?

如果我將Ember.js 1.0.0與Ember數據1.0.0 beta.1結合使用,則不會發生此錯誤。

我希望有人可以解釋爲什麼在某些情況下這個額外的lib似乎需要?

馬克

回答

15

根據this pull request灰燼本身不使用Ember.State內部了,而且因爲這Ember Data commit灰燼數據並不依賴於Ember.State實現(新/更好的方式在灰燼數據處理的內部狀態使用代替)。

由於這兩個庫都不依賴於Ember.State,所以它們將它移動到它自己的包中,如果您仍然需要它,可以手動包含它。

Github上存儲庫Ember.State can be found here

使用此表中可以看到,使用灰燼數據0.13和灰燼1.0.0,恩貝爾數據時0.13嘗試使用Ember.State,但灰燼1.0.0並沒有提供它,使你錯誤。

+-------------------------+------------------+----------------------+ 
|   Library   | Uses Ember.State | Provides Ember.State | 
+-------------------------+------------------+----------------------+ 
| Ember rc7    | no    | yes     | 
| Ember 1.0.0    | no    | no     | 
| Ember Data 0.13   | yes    | no     | 
| Ember Data 1.0.0 beta 1 | no    | no     | 
+-------------------------+------------------+----------------------+ 
+1

Thx。非常好的解釋!我現在試圖遷移到Ember數據1.0.0,以便我可以刪除依賴...但遇到很多問題(我經常使用事務)。 – cyclomarc

相關問題