javascript - Meteor 全页面刷新加载更多按钮(iron-router)

标签 javascript jquery pagination meteor iron-router

我的 Meteor 应用程序似乎在新路线上令人耳目一新,我在关注 Discover Meteor 时添加了 Iron-router-progress。

这是 URL - http://thusstyles.meteor.com/

Github URL - github.com/ThusStyles/diccoverMeteor

发现 Meteor URL - http://meteor-book-chapter12-5.meteor.com/

当单击“加载更多”按钮时,我的似乎跳到顶部。

最佳答案

这是因为您使用waitOn而不是订阅。 waitOn会尝试渲染加载模板,而subscriptions仍然会订阅但不会触发加载模板,因此不会导致闪烁。

但是,这也会在订阅准备就绪之前呈现页面。因此,您需要跟踪订阅的就绪状态。请参阅发现 Meteor 的示例。请注意,数据返回 this.postsSub.ready,它是在订阅下设置的。

PostsListController = RouteController.extend({
template: 'postsList',
increment: 5,
postsLimit: function() {
return parseInt(this.params.postsLimit) || this.increment;
},
findOptions: function() {
return {sort: {submitted: -1}, limit: this.postsLimit()};
},
subscriptions: function() {
this.postsSub = Meteor.subscribe('posts', this.findOptions());
},
posts: function() {
return Posts.find({}, this.findOptions());
},
data: function() {
var hasMore = this.posts().count() === this.postsLimit();
var nextPath = this.route.path({postsLimit: this.postsLimit() + this.increm
ent});
return {
posts: this.posts(),
ready: this.postsSub.ready,
nextPath: hasMore ? nextPath : null
};
}
});

查看 GitHub 上的完整示例: https://github.com/DiscoverMeteor/Microscope/commit/chapter12-5

关于javascript - Meteor 全页面刷新加载更多按钮(iron-router),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23900767/

相关文章:

JavaScript 地理编码不启动搜索

jquery - ajax 转换器和 IE7

laravel - 如何使用 Laravel API 资源对加载的关系进行分页

javascript - 使用 JQuery 鼠标悬停更改背景颜色

javascript - 通过 javascript 更改相同的 css 类属性

python - 使用 python 进行安静的分页

javascript - Kendo Pager(可分页)显示 'No items to display',即使记录在那里

javascript - 列出/输出来自单个输入的逗号分隔值

javascript - Universal Analytics - 多作者报告、自定义维度

javascript - Jquery remove() 动态创建的元素