vue3学习教程第三十三节(TS 之 computed watch)

vue3 组合是API 中我们经常使用的 监听函数 computed 和 watch使用

1、computed 里面添加类型

<script setup lang="ts">
import { ref, computed } from 'vue'
const  age = ref(18)
// 定义一个Person 接口
interface Person {
  age: number
  name: string
}
const person = ref<Person>({
  age: 18,
  name: 'Andy'
})
// 只读的
const params = computed(():Person => {
  return {
    age: person.value.age,
    name: person.value.name
  }
})
console.log('===params=', params)

// 可读可写
const paramsA = computed<Person>({
  get: () => person.value,
  set: () => {
    return {
      age: person.value.age + 2,
      name: person.value.name
    }
  }
})
</script>

2、watch() 中的类型使用

// 监听单个数据源时候

<script lang="ts" setup>
  import { watch } from 'vue'
  interface Person {
    age: number
    name: string
  }
const myParams = watch(():Person => person.value, (n:Person, o:Person) => {
  console.log('=n===', n, o)
})

const myParamsAA = watch<Person>(():Person => person.value, (n:Person, o:Person): void => {
  console.log('=n===', n, o)
})
</script>
  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

刺客-Andy

努力将爱好变成更有价值的事物

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值