Vue 3 watchEffect 怎么实现搜索关键词自动触发检索

夏辰姑娘_9486

夏辰姑娘_9486

2026-10-24

457人浏览

原创

watcheffect 实现搜索自动检索,自动追踪 keyword 等响应式依赖,挂载即执行、变化即响应;内置 settimeout + oninvalidate 防抖、abortcontroller 防竞态,多条件联动无需显式列依赖。

vue 3 watcheffect 怎么实现搜索关键词自动触发检索

用 watchEffect 实现搜索关键词自动触发检索,核心是“自动追踪 + 立即响应 + 可控清理”,不需要手动列依赖、也不用配 immediate: true,写起来简洁,跑起来可靠。

基础写法:监听关键词并发起请求

只要在回调里读取 keyword.value,watchEffect 就会自动盯住它:

  • 组件挂载时立刻执行一次(比如初始化加载空列表或默认关键词)
  • 用户输入导致 keyword 变化时,自动重新执行
  • 无需 watch([keyword], ...) 或 watch(keyword, ...) 那种显式声明

加防抖:避免频繁请求

直接在 watchEffect 回调里用 setTimeout,再配合 onInvalidate 清除上一个定时器:

vue-composition-api-best-practices
vue-composition-api-best-practices

Vue 3 组合式 API 与

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Vue 教程
Vue 教程

共42课时 | 17.2万人学习

国外Web开发全栈课程全集
国外Web开发全栈课程全集

共12课时 | 1.4万人学习

Vue.js 微实战--十天技能课堂
Vue.js 微实战--十天技能课堂

共18课时 | 1.7万人学习