first
This commit is contained in:
36
node_modules/vant/lib/mixins/bind-event.js
generated
vendored
Normal file
36
node_modules/vant/lib/mixins/bind-event.js
generated
vendored
Normal file
@ -0,0 +1,36 @@
|
||||
"use strict";
|
||||
|
||||
exports.__esModule = true;
|
||||
exports.BindEventMixin = BindEventMixin;
|
||||
|
||||
var _event = require("../utils/dom/event");
|
||||
|
||||
/**
|
||||
* Bind event when mounted or activated
|
||||
*/
|
||||
var uid = 0;
|
||||
|
||||
function BindEventMixin(handler) {
|
||||
var key = "binded_" + uid++;
|
||||
|
||||
function bind() {
|
||||
if (!this[key]) {
|
||||
handler.call(this, _event.on, true);
|
||||
this[key] = true;
|
||||
}
|
||||
}
|
||||
|
||||
function unbind() {
|
||||
if (this[key]) {
|
||||
handler.call(this, _event.off, false);
|
||||
this[key] = false;
|
||||
}
|
||||
}
|
||||
|
||||
return {
|
||||
mounted: bind,
|
||||
activated: bind,
|
||||
deactivated: unbind,
|
||||
beforeDestroy: unbind
|
||||
};
|
||||
}
|
Reference in New Issue
Block a user