computed函数的使用

一、computed函数

1、作用:创建计算属性,用于根据其他属性的值进行计算,并自动更新计算结果。它可以提高代码的可读性和性能。

2、使用步骤

(1)导入computed函数

(2)执行函数在回调参数中return基于响应式数据做计算的值,用变量接收

代码如下(示例):

<script setup>
//1、导入computed函数
import { ref, computed } from 'vue'
const list = ref([1, 2, 3, 4, 5, 6])    //原始响应式数组list

//2、执行函数 return计算之后的值 变量接收
const computedList = computed(() => {
    return list.value.filter(item => item > 2)
})
</script>
<template>
    <div>
        原始响应式数组--{{ list }}
    </div>
    <br>
    <div>
        计算属性数组--{{ computedList }}
    </div>
</template>

 这里导入computed计算属性函数,用filter方法,对list中的每个元素进行过滤,回调函数 item => item > 2 表示只保留大于2的元素。然后定义一个computedList接收返回值的变量
  需要注意的是, computed 函数中的代码不应该有副作用,即不应该修改响应式数据或进行异步操作。如果需要进行副作用操作,应该使用 watch 或 watchEffect 函数。

总结

computed函数:

  • 导入computed函数;
  • 执行函数在回调参数中return基于响应式数据做计算的值,用变量接收
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
computed函数Vue.js中的一个特殊属性,用于定义计算属性。计算属性是基于其他数据属性计算得出的属性,它的值是根据一定的逻辑计算得出的,而不是直接从数据属性中取得的。computed函数可以接收一个对象作为参数,对象中的每个属性都是对应的计算属性的定义。 在Vue.js中,当计算属性第一次被访问时,Vue会调用计算属性的getter函数来计算属性的值,并将计算属性的依赖关系与当前的Watcher进行绑定。当计算属性依赖的数据发生变化时,Vue会调用相关的Watcher来更新计算属性的值。 在计算属性的定义中,我们可以使用this关键字来访问组件的数据属性和其他计算属性。当计算属性依赖的数据属性发生改变时,计算属性会重新计算得到新的值。 回到你的问题,当调用computed函数时,会执行Watcher.evaluate()方法,该方法会去调用相关computed定义的方法,并将该方法与computed的Watcher绑定。在调用computed方法时,如果该方法内部依赖了data中的属性,会通过调用get()方法的depend()函数将data的Dep和computed的Watcher绑定。这样就确保了当data的属性发生变化时,computed的Watcher会重新计算。 至于你提到的watcher.depend(),它的作用是在computed属性第一次计算时,主动去绑定computed的Watcher依赖的其他Watcher。这样,当其他Watcher发生变化时,computed的Watcher也会被触发重新计算。 如果我们删去watcher.depend()这段代码,当其他Watcher发生变化时,computed的Watcher就不会被触发重新计算,计算属性的值也不会更新。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值