1

我了解 ember-data 仍处于相当不稳定的状态。我只是想确认我遇到的是预期的行为或错误。并希望找到一些解决方法。

我有一个应用程序,除了一种之外,它可以以所有预期的方式正常运行。最好我可以告诉我已经追溯到初始加载时应用程序路由的方式。如果我从路由#/posts#/post/1id 有效的地方启动应用程序,它工作正常。应用程序启动、路由和加载模型。任何有效的路线都可以正常工作。如果我要使用具有错误 id 的路由,#/post/1a534b而 ember-data 将无法找到具有该 id 的底层模型,则应用程序将永远不会路由。

我已经LOG_TRANSITIONS在我的应用程序上启用并确认它永远不会转换到路由,不会在路由上出错,甚至不会将我的应用程序模板注入 DOM。这个问题是初始加载所特有的,因为它似乎要在注入之前等待模型加载。这永远不会发生,因为承诺的模型不存在。

那么这是预期的行为还是这里有其他东西在起作用?

我会说我的应用程序在 dom 准备好之后才加载,并且在 dom 准备好时被异步下拉。这不应该有所作为,因为应用程序在加载正确的路线时运行良好。

同时,我会看看是否可以获取 jsfiddle 作为示例,因为我不能直接使用我的代码。

4

2 回答 2

1

不幸的是,我相信这是目前的预期行为:

https://github.com/emberjs/ember.js/issues/1454

我认为这里正在做一些工作来解决错误和路由器:

https://github.com/emberjs/ember.js/pull/2740

于 2013-06-03T22:21:16.353 回答
0

在路由中,如果模型加载失败,则转换到另一条路由。

model(params) {
  return this.store.findRecord('account', params.account_id)
    .catch(()=>{
      this.transitionTo('admin.accounts');
    });
},

我目前正在使用 Ember 2.10.0 构建一个应用程序

于 2017-01-22T21:06:51.863 回答