vue3 TS防抖函数
写VUE3+TS项目时,写到一个模糊查询提示相关信息的功能,没找到合适的防抖函数,利用TS的特性写了一个简单易懂的防抖函数,希望能帮到大家。
·
目录
封装工具
useDebounce.ts
//防抖函数
type CallbackFn = (item?: any) => void
let timer: any = null
export default function (Callback: CallbackFn, delay = 1000) {
timer != null ? clearTimeout(timer) : null
timer = setTimeout(() => {
Callback && Callback() //当有值才会执行
}, delay)
}
使用
AreaSeach.vue
<template>
<div>
出发地区:<input type="text" v-model="beginArea" />
<div>
</template>
<script setup lang="ts">
import { ref,watch } from 'vue'
import useDebounce from '@/utils/useDebounce'
const beginArea=ref('')
//1.监听搜索关键字
watch(beginArea, (newValue) => {
useDebounce(() => {
console.log(newValue)
//要执行逻辑、方法、
//调用axios、完成防抖
})
})
//更多玩法期待您的探索
</script>
更多推荐
已为社区贡献1条内容
所有评论(0)