0

问题

升级到最新的 ember.js 后,我收到此错误:

Uncaught Error: assertion failed: Could not find state for path: "loading"

查看框架代码,ember 似乎希望路由到“加载”路线,直到 ember 数据承诺返回。我没有看到任何关于“加载”路线的文档,所以只是尝试添加一个这样的:

loading: Ember.Route.extend({
}),

这导致错误:

Uncaught Error: assertion failed: Loading state should not be a route

线索

  • 从 master 运行构建(提交693c8185fbda70df523bb60d21f3dc6d9d94b018
  • 使用旧的路由器构建(ember-old-router.js),这样我就可以在不重写路由器的情况下升级
  • 仅当我直接导航到 URL 时才会发生错误。当我从兄弟路由路由时不会发生这种情况。

问题

我应该在某处定义装载路线吗?如果是这样,语法是什么?如果没有,我该如何防止这个错误?

4

1 回答 1

0

这是一个奇怪的问题,因为我认为Ember.StateManager/Ember.State不再被使用,但似乎你在某处使用它们。

为什么是这样?

尽管如此,通过声明loadingEmber.State,它至少应该可以解决您的问题,但除非我严重错误,否则您应该远离Ember.State支持新路由器。

loading: Ember.State.extend();

于 2013-02-10T13:07:39.897 回答