wekan/client/components/mixins/infiniteScrolling.js
Maxime Quandalle 46747b01fb Fix card infinite scrolling on card activities
I imagine blaze-component changed their Mixins API since I written
this code. We need some tests to avoid this kind of regressions when
updating dependencies!

Fixes #420
2016-01-03 23:40:08 +01:00

32 lines
673 B
JavaScript

const peakAnticipation = 200;
Mixins.InfiniteScrolling = BlazeComponent.extendComponent({
onCreated() {
this._nextPeak = Infinity;
},
setNextPeak(v) {
this._nextPeak = v;
},
getNextPeak() {
return this._nextPeak;
},
resetNextPeak() {
this._nextPeak = Infinity;
},
events() {
return [{
scroll(evt) {
const domElement = evt.currentTarget;
let altitude = domElement.scrollTop + domElement.offsetHeight;
altitude += peakAnticipation;
if (altitude >= this.callFirstWith(null, 'getNextPeak')) {
this.mixinParent().callFirstWith(null, 'reachNextPeak');
}
},
}];
},
});