我正在将Ember rc7项目迁移到Ember 1.0.0.我有这个不寻常的错误:
Ember.State has been moved into a plugin: https://github.com/emberjs/ember-states
只有当我将Ember.js 1.0.0与Ember数据0.13结合使用时才会出现错误.如果我包含额外的余烬状态lib,那么一切正常.
这种变化的原因是什么?为什么我需要额外的lib?
如果我将Ember.js 1.0.0与Ember数据1.0.0 beta.1结合使用,则不会发生此错误.
我希望有人可以解释为什么在某些情况下似乎需要这个额外的lib?
渣
解决方法
根据
this pull request Ember本身不再在内部使用Ember.State,并且截至此
Ember Data commit Ember Data不依赖于Ember.State实现(使用Ember Data中处理内部状态的新的/更好的方法).
由于两个库都没有依赖Ember.State,因此将它们移动到自己的包中,如果仍然需要它,可以手动包含它.
Github存储库为Ember.State
can be found here
使用此表,您可以看到当使用Ember Data 0.13和Ember 1.0.0时,Ember Data 0.13尝试使用Ember.State,但Ember 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 | +-------------------------+------------------+----------------------+