tdesign-mobile-vue
Version:
tdesign-mobile-vue
38 lines (30 loc) • 1.18 kB
JavaScript
/**
* tdesign v1.7.0
* (c) 2024 TDesign Group
* @license MIT
*/
;
Object.defineProperty(exports, '__esModule', { value: true });
var vue = require('vue');
var isFunction = require('lodash/isFunction');
var shared_dom = require('../shared/dom.js');
require('lodash/isString');
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
var isFunction__default = /*#__PURE__*/_interopDefaultLegacy(isFunction);
var useTeleport = function useTeleport(attach, triggerNode) {
var to = isFunction__default["default"](attach) ? vue.computed(attach) : vue.ref(attach);
var innerTriggerNode = isFunction__default["default"](triggerNode) ? vue.computed(triggerNode) : vue.ref(triggerNode);
var element = vue.ref();
var getElement = function getElement() {
element.value = shared_dom.getSSRAttach() || shared_dom.getAttach(to.value, innerTriggerNode.value);
};
vue.onMounted(function () {
return getElement();
});
vue.watch([to, innerTriggerNode], function () {
return getElement();
});
return element;
};
exports["default"] = useTeleport;
//# sourceMappingURL=useTeleport.js.map