Vue学习笔记-Vue3中的customRef

作用

创建一个自定义的ref,并对其依赖项的更新和触发进行显式控制

案例

描述:向输入框中输入内容,在下方延迟1秒展示输入内容

代码:

javascript 复制代码
<template>
  <input type="text" v-model="keyword">
  <h3>{{keyword}}</h3>
</template>

<script>
import {customRef} from 'vue'
export default {
  name: 'App',
  setup(){
    function  myRef(value){
      return customRef((track, trigger)=>{
        let timer
          return{
            get(){
              console.log('正在读取数据...:',value)
              //通知vue追踪value的变化
              track();
              return value
            },
            set(newValue){
              console.log('数据发生改变,新数据为:',newValue)
              clearTimeout(timer)
              // //将新值赋给value
              // value = newValue;
              // //通知vue重新解析模板
              // trigger();
              timer = setTimeout(()=>{
                value = newValue;
                trigger();
              },1000)
            }
          }
      })
    }
    //写一个自定义的myRef
    let keyword = myRef('hello')
    return{
      keyword
    }
  },
}
</script>

<style>

</style>
相关推荐
ouliten3 小时前
cuda编程笔记(37)--逐行量化的kernel分析
笔记
MimCyan3 小时前
面向开发者的 LLM 入门课程(个人笔记记录-2026.03.30)
笔记·ai
Slow菜鸟3 小时前
AI学习篇(三) | AI效率工具指南(2026年)
人工智能·学习
Hammer_Hans3 小时前
DFT笔记34
笔记
qcwl663 小时前
深入理解Linux进程与内存 学习笔记#4
笔记·学习
蒸蒸yyyyzwd4 小时前
后端学习笔记 day4
linux·笔记·学习
南境十里·墨染春水5 小时前
C++ 笔记 友元(面向对象)
开发语言·c++·笔记
笨笨饿6 小时前
20_Git 仓库使用手册 - 初学者指南
c语言·开发语言·嵌入式硬件·mcu·学习
cqbelt6 小时前
Python 并发编程实战学习笔记
笔记·python·学习
Cobyte6 小时前
1.基于依赖追踪和触发的响应式系统的本质
前端·javascript·vue.js