Ember 1.0.0:Ember.State已被移入插件:https://github.com/emberjs/ember-states

cyc*_*arc 7 ember.js ember-data

我正在将Ember rc7项目迁移到Ember 1.0.0.我有这个不寻常的错误:

Ember.State has been moved into a plugin: https://github.com/emberjs/ember-states
Run Code Online (Sandbox Code Playgroud)

只有当我将Ember.js 1.0.0与Ember数据0.13结合使用时才会出现错误.如果我包含额外的余烬状态lib,那么一切正常.

这种变化的原因是什么?为什么我需要额外的lib?

如果我将Ember.js 1.0.0与Ember数据1.0.0 beta.1结合使用,则不会发生此错误.

我希望有人可以解释为什么在某些情况下似乎需要这个额外的lib?

Cra*_*den 15

根据这个拉取请求, Ember本身不再在Ember.State内部使用,并且在此Ember Data提交中, Ember Data不依赖于Ember.State实现(使用了一种新的/更好的方式来处理Ember Data中的内部状态).

由于两个库都没有依赖关系,Ember.State因此将它们移动到自己的包中,如果仍然需要它,可以手动包含它.

可以在这里找到 Github存储库Ember.State

使用此表,您可以看到当使用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                   |
+-------------------------+------------------+----------------------+
Run Code Online (Sandbox Code Playgroud)