Vue3 计算属性和侦听器实战(computed、watch)

当我们在Vue 3中使用计算属性(computed)和侦听器(watch)时,主要目标是实现对数据的响应式处理和对数据变化的监视。计算属性用于处理数据的计算逻辑,而侦听器用于在数据变化时执行一些副作用操作。下面我将用详细的代码示例来解释Vue 3中计算属性和侦听器的实战用法。

首先,假设我们有一个简单的场景,要计算一个人的年龄,并在年龄变化时输出一些信息。

设置Vue实例:

const app = Vue.createApp({
  data() {
    return {
      birthYear: 1990,
      currentYear: new Date().getFullYear()
    };
  },
  computed: {
    age() {
      return this.currentYear - this.birthYear;
    }
  },
  watch: {
    age(newAge, oldAge) {
      console.log(`年龄从 ${oldAge} 岁变为 ${newAge}`);
    }
  }
});

const vm = app.mount('#app');

在这段代码中,我们创建了一个Vue应用,定义了birthYear和currentYear作为响应式数据。然后,我们使用computed属性创建了一个计算属性age,用于计算年龄。在watch中,我们侦听了age属性的变化,一旦年龄发生变化,就会触发回调函数。

HTML模板:

<div id="app">
  <p>出生年份:{{ birthYear }}</p>
  <p>当前年份:{{ currentYear }}</p>
  <p>年龄:{{ age }}</p>
</div>

在HTML模板中,我们将birthYear、currentYear和age属性展示出来。

当你打开网页并查看控制台时,你会看到每次age属性变化时,都会输出年龄变化的信息。

这个示例中,我们演示了如何使用Vue 3的计算属性和侦听器来实现一个简单的年龄计算和监视功能。计算属性用于实时计算数据,而侦听器用于对数据的变化做出响应。在实际开发中,你可以根据业务需要来设计更复杂的计算属性和侦听器,以满足你的需求。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

AlgorithmHero

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值