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>
相关推荐
m4Rk_11 分钟前
【论文阅读】Agent记忆机制(106):COUNTERMEM——用可执行世界模型验证“如果当时换个动作”的反事实记忆
论文阅读·人工智能·学习·开源·github
卤蛋fg620 分钟前
vue 下拉树组件 vxe-table-select 实现分页多选
vue.js
测试运维日常笔记24 分钟前
SQL 快速学习笔记:1~2 小时掌握面试重点
笔记·sql·学习
Hotchip_MEMS1 小时前
从触发吸气道智能感知:MEMS硅麦埋下雾化器智能化伏笔
大数据·人工智能·笔记·电脑·制造
fanged1 小时前
Audio学习4(DSP)(TODO)
学习
波力海苔夹心脆6751 小时前
C# StringBuilder 详解:字符串拼接为什么总说要用它?
开发语言·笔记·c#·.net·字符串·stringbuilder·入门教程
weixin_448119941 小时前
Datawhale DeepSeek Harness 技术入门与架构原理 笔记3
笔记·架构
lengxuenong1 小时前
树状数组 · 信息学学习手册3-优化LIS
c++·学习·算法
果壳science1 小时前
关于光子、量子猜想
笔记·科技·学习·创业创新·学习方法
愤怒火龙果2 小时前
蓝队笔记整理01 C2 远控与 Webshell 流量特征
笔记·网络安全