| Server IP : 209.209.40.120 / Your IP : 216.73.217.112 Web Server : Microsoft-IIS/10.0 System : Windows NT NEWWWW 10.0 build 17763 (Windows Server 2019) i586 User : NEWWWW$ ( 0) PHP Version : 8.3.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : C:/framework7/node_modules/framework7-vue/shared/ |
Upload File : |
import { watch, onMounted, onBeforeUnmount } from 'vue';
import { f7, f7ready } from './f7.js';
export const useTooltip = (elRef, props) => {
let f7Tooltip = null;
const {
tooltip,
tooltipTrigger
} = props;
onMounted(() => {
if (!elRef.value) return;
if (!tooltip) return;
f7ready(() => {
f7Tooltip = f7.tooltip.create({
targetEl: elRef.value,
text: tooltip,
trigger: tooltipTrigger
});
});
});
onBeforeUnmount(() => {
if (f7Tooltip && f7Tooltip.destroy) {
f7Tooltip.destroy();
f7Tooltip = null;
}
});
watch(() => props.tooltip, value => {
if (!value && f7Tooltip) {
f7Tooltip.destroy();
f7Tooltip = null;
return;
}
if (value && !f7Tooltip && f7) {
f7Tooltip = f7.tooltip.create({
targetEl: elRef.value,
text: value,
trigger: tooltipTrigger
});
return;
}
if (!value || !f7Tooltip) return;
f7Tooltip.setText(value);
});
};