zmp-vue
Version:
Build full featured iOS & Android apps using ZMP & Vue
38 lines (28 loc) • 777 B
JavaScript
;
exports.__esModule = true;
exports.useTab = void 0;
var _vue = require("vue");
var _zmp = require("./zmp");
var useTab = function useTab(elRef, emit) {
var onTabShow = function onTabShow(el) {
if (elRef.value !== el) return;
emit('tab:show', el);
};
var onTabHide = function onTabHide(el) {
if (elRef.value !== el) return;
emit('tab:hide', el);
};
(0, _vue.onMounted)(function () {
if (!elRef.value) return;
(0, _zmp.zmpready)(function () {
_zmp.zmp.on('tabShow', onTabShow);
_zmp.zmp.on('tabHide', onTabHide);
});
});
(0, _vue.onBeforeUnmount)(function () {
if (!_zmp.zmp) return;
_zmp.zmp.off('tabShow', onTabShow);
_zmp.zmp.off('tabHide', onTabHide);
});
};
exports.useTab = useTab;