Skip to content

Instantly share code, notes, and snippets.

@Dartv
Created September 13, 2015 06:59
Show Gist options
  • Save Dartv/0a20c305d991929531bc to your computer and use it in GitHub Desktop.
Save Dartv/0a20c305d991929531bc to your computer and use it in GitHub Desktop.
Infinite scroll with viewmodel in meteor
Template.myTemplate.viewmodel({
page: new ReactiveVar(0),
scrollListener: _.debounce(function () {
var self = this;
var diff = $(document).height() - $(window).height();
if ($(window).scrollTop() === diff) {
self.viewmodel.page().set(self.viewmodel.page().get() + 1);
}
}, 50);
});
Template.myTemplate.onCreated(function () {
window.addEventListener('scroll', this.viewmodel.scrollListener.bind(this));
});
Template.myTemplate.onDestroyed(function () {
window.removeEventListener('scroll', this.viewmodel.scrollListener.bind(this));
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment