在 Angular 中,$routeProvider 解析属性允许延迟路由更改,直到加载数据。鉴于 Ember 中的路由模型钩子返回了一个承诺,我想知道这些东西是如何在 Ember 中完成的
这就是我在角度延迟AngularJS路线更改直到模型加载以防止闪烁的意思
带有示例代码的链接会很棒
在 Angular 中,$routeProvider 解析属性允许延迟路由更改,直到加载数据。鉴于 Ember 中的路由模型钩子返回了一个承诺,我想知道这些东西是如何在 Ember 中完成的
这就是我在角度延迟AngularJS路线更改直到模型加载以防止闪烁的意思
带有示例代码的链接会很棒
就在最近,这个PR向 ember.js引入了异步转换。通过此更改,您可以执行各种操作,例如,如果数据仍在进行中,则延迟路由的转换。一条路线现在有各种各样的钩子可以做你想做的事。
作为钩子中的示例(取自下面提到的要点),afterModel
您可以执行类似这样的操作,仅post.show
在您实际有数据时才转换到路由:
App.PostsIndexRoute = Ember.Route.extend({
afterModel: function(posts, transition) {
if (posts.length === 1) {
this.transitionTo('post.show', posts[0]);
}
}
});
由于这个新功能还很年轻,您需要使用最新的 master才能使用它。有关如何使用 API 的更多信息,请参阅此要点。
希望能帮助到你