1234567891011121314151617181920212223242526272829 |
- /**
- * Bind event when mounted or activated
- */
- import { on, off } from '../utils/dom/event';
- var uid = 0;
- export function BindEventMixin(handler) {
- var key = "binded_" + uid++;
- function bind() {
- if (!this[key]) {
- handler.call(this, on, true);
- this[key] = true;
- }
- }
- function unbind() {
- if (this[key]) {
- handler.call(this, off, false);
- this[key] = false;
- }
- }
- return {
- mounted: bind,
- activated: bind,
- deactivated: unbind,
- beforeDestroy: unbind
- };
- }
|