element-plus
Version:
A Component Library for Vue 3
17 lines (16 loc) • 414 B
JavaScript
import { onBeforeUnmount } from 'vue';
export default function () {
let timeoutHandle;
onBeforeUnmount(() => {
clearTimeout(timeoutHandle);
});
return {
registerTimeout: (fn, delay) => {
clearTimeout(timeoutHandle);
timeoutHandle = setTimeout(fn, delay);
},
cancelTimeout: () => {
clearTimeout(timeoutHandle);
},
};
}