19 lines
541 B
JavaScript
19 lines
541 B
JavaScript
import { onBeforeMount, onBeforeUnmount, ref } from 'vue';
|
|
function useNow(interval, { type = 'number' }) {
|
|
const isNumber = type === 'number';
|
|
const nowRef = ref(isNumber ? Date.now() : new Date());
|
|
if (interval === false) {
|
|
let id;
|
|
onBeforeMount(() => {
|
|
id = setInterval(() => {
|
|
nowRef.value = isNumber ? Date.now() : new Date();
|
|
});
|
|
});
|
|
onBeforeUnmount(() => {
|
|
clearInterval(id);
|
|
});
|
|
}
|
|
return nowRef;
|
|
}
|
|
export default useNow;
|