我正在尝试实现延迟加载分页。我有一个模型代表分页视图中的“页面”。它包含一组分页对象以及一组嵌套的其他“页面”。(请参阅https://gist.github.com/hooverlunch/6314207)我不想仅在单击其他页面的链接后才加载其他页面的对象数组。
但似乎路线的模型方法只触发一次,当页面首次加载时。
每次点击相关链接时,有什么办法让它触发吗?还是有更好的方法来做到这一点?
我正在尝试实现延迟加载分页。我有一个模型代表分页视图中的“页面”。它包含一组分页对象以及一组嵌套的其他“页面”。(请参阅https://gist.github.com/hooverlunch/6314207)我不想仅在单击其他页面的链接后才加载其他页面的对象数组。
但似乎路线的模型方法只触发一次,当页面首次加载时。
每次点击相关链接时,有什么办法让它触发吗?还是有更好的方法来做到这一点?
当您直接通过 url 访问路由时会调用模型挂钩,但不会在您使用 linkTo 助手或通过 transitionTo 传递上下文时调用。如果您需要在这些情况下调用某些内容,请改用路由的 setupController 挂钩。
创建一个动作
<button {{action 'goToPage' pageObj}}>{{pageObj.id}}</button>
在您的路线中添加
Myember.KbGlyprobsPageRoute = Ember.Route.extend({
events: {
goToPage: function(pageObj){
var newPage = Myember.KbGlyprobPage.find(pageObj.id);
this.transitionTo('Page', newPage);
}
}
});