想要在最少 3 个字符后触发 useFetch,并在每个字符后等待 100 毫秒。
还有一个奇怪的事情,searchTerm.value 的值始终为空。
const searchTerm = ref('')
const debouncedFn = useDebounceFn(() => {
if (searchTerm.value && searchTerm.value.length >= 3) {
execute()
}
}, {delay: 50})
const {data, execute } = await useFetch('url', {
headers: {
access_token: 'token'
},
query: {
query: **searchTerm.value** >> always be empty
}
watch: [
debouncedFn
],
immediate: false,
})
<template>
<input v-model="searchTerm">
</template>
在你的手表上,这就是你应该做的
watch: [
debouncedFn().then((value) => {
return value
})
],