import { watchEffect, watch, nextTick } from 'vue' export const useWatchOnly = (...args: Parameters) => { const cbRaw = args[1] let stop args[1] = (...args) => { if (stop) { stop() } else { nextTick(stop) } return cbRaw(...args) } stop = watch(...args) } export const useWatchEffectOnly = (...args: Parameters) => { const cbRaw = args[0] let stop args[0] = (...args) => { if (stop) { stop() } else { nextTick(stop) } return cbRaw(...args) } stop = watchEffect(...args) }