[Improvement] optimize passive events (#478)

This commit is contained in:
neverland
2017-12-25 15:58:44 +08:00
committed by GitHub
parent 2d2a368e2c
commit 30f22b28ed
5 changed files with 51 additions and 14 deletions

View File

@@ -30,6 +30,7 @@
<script>
import { create } from '../utils';
import { raf } from '../utils/raf';
import { on, off } from '../utils/event';
import scrollUtils from '../utils/scroll';
export default create({
@@ -119,7 +120,7 @@ export default create({
// whether to bind sticky listener
scrollHandler(init) {
this.scrollEl = this.scrollEl || scrollUtils.getScrollEventTarget(this.$el);
this.scrollEl[init ? 'addEventListener' : 'removeEventListener']('scroll', this.onScroll);
(init ? on : off)(this.scrollEl, 'scroll', this.onScroll, true);
if (init) {
this.onScroll();
}