Vue 自定义ref

参考

学习Vue3 第六章(认识Ref全家桶)_ref_小满zs的博客-CSDN博客

使用案例

演示

代码

typescript 复制代码
<script setup lang="ts">
import { customRef } from 'vue';

function MyRef<T>(value:T){
  let timer:any
  return customRef((track,trigger)=>{
    return{
      get(){
        track()
        return value
      },
      set(newValue){

        clearTimeout(timer)
        timer = setTimeout(()=>{
          console.log("出发修改事件,修改后的值为:"+newValue)
          value = newValue
          timer = null
          trigger()
        },500)

      }
    }
  })
}

const obj = MyRef<string>("xyy")

let flag:boolean = true
const change = ()=>{
  if(flag){
    obj.value = "xyy123"
  }else{
    obj.value = "xyy"
  }
  flag =!flag
}

</script>

<template>
  {{ obj }}
  <button @click="change">change</button>
</template>
相关推荐
西洼工作室10 分钟前
CSS高效开发三大方向
前端·css
昔人'13 分钟前
css`font-variant-numeric: tabular-nums` 用来控制数字的样式。
前端·css
铅笔侠_小龙虾1 小时前
动手实现简单Vue.js ,探索Vue原理
前端·javascript·vue.js
哟哟耶耶3 小时前
Starting again-02
开发语言·前端·javascript
Apifox.3 小时前
Apifox 9 月更新| AI 生成接口测试用例、在线文档调试能力全面升级、内置更多 HTTP 状态码、支持将目录转换为模块
前端·人工智能·后端·http·ai·测试用例·postman
Kitasan Burakku3 小时前
Typescript return type
前端·javascript·typescript
叁佰万3 小时前
前端实战开发(一):从参数优化到布局通信的全流程解决方案
前端
笔尖的记忆3 小时前
js异步任务你都知道了吗?
前端·面试
光影少年3 小时前
react生态
前端·react.js·前端框架
golang学习记4 小时前
从0死磕全栈之Next.js 中的错误处理机制详解(App Router)
前端