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>
相关推荐
charlie1145141918 小时前
嵌入式Linux驱动开发——模块参数与内核调试:让模块“活“起来的魔法
linux·驱动开发·学习·c
ZzYH228 小时前
文献阅读 260407-Leveraging edge artificial intelligence for sustainable agriculture
笔记
青桔柠薯片8 小时前
I²C 总线协议学习总结:从开漏逻辑到读写事务的工程视角
c语言·开发语言·学习
甄心爱学习8 小时前
【项目实训】法律文书智能摘要系统2
前端·javascript·vue.js
AI_零食8 小时前
开源鸿蒙跨平台Flutter开发:生物力学与力量周期-臂力训练矩阵架构
学习·flutter·ui·华为·矩阵·开源·harmonyos
华科易迅8 小时前
Vue通过Ajax获取后台路由信息
vue.js·ajax·okhttp
sinat_255487818 小时前
泛型:类·学习笔记
java·jvm·笔记·学习
被考核重击8 小时前
计算机网络核心知识点笔记
网络·笔记·计算机网络
鱼鳞_9 小时前
Java学习笔记_Day21(Set)
java·笔记·学习
鹅天帝9 小时前
20260407网安学习日志——序列化漏洞
前端·学习·web安全·网络安全·xss