vue2与vue3中的computed

以下两种代码一样

for(let i=0;i<allData.value.length;i++){

sampleNoArr.value.push(allData.value[i].bakingBatch)

}

// computed 返回的是一个响应式的 ref 对象

sampleNoArr = computed(() => allData.value.map(item => item.bakingBatch))

Vue 2 中的 computed:

  1. 返回的是一个响应式的值,而不是响应式对象。
  • 可以直接在模板中使用,无需 .value。
  • 在 JavaScript 中使用时也无需 .value。

    // Vue 2
    export default {
    data() {
    return {
    count: 0
    }
    },
    computed: {
    doubleCount() {
    return this.count * 2
    }
    },
    methods: {
    logDouble() {
    console.log(this.doubleCount) // 直接使用,无需 .value
    }
    }
    }

Vue 3 中的 computed:

  • 在组合式 API 中,computed 返回的是一个响应式的 ref 对象。
  • 在模板中使用时,Vue 会自动解包 ref,所以不需要 .value。
  • 在 JavaScript 中使用时需要通过 .value 访问其值。

    // Vue 3 组合式 API
    import { ref, computed } from 'vue'

    export default {
    setup() {
    const count = ref(0)
    const doubleCount = computed(() => count.value * 2)

    复制代码
      function logDouble() {
        console.log(doubleCount.value) // 需要使用 .value
      }
    
      return {
        count,
        doubleCount,
        logDouble
      }
    }

    }

相关推荐
黑云压城After3 小时前
H5使用环信实现视频或语音通话
前端·javascript·vue.js
未来之窗软件服务4 小时前
自己写算法(九)网页数字动画函数——东方仙盟化神期
前端·javascript·算法·仙盟创梦ide·东方仙盟·东方仙盟算法
你的人类朋友5 小时前
什么是断言?
前端·后端·安全
FIN66686 小时前
昂瑞微:实现精准突破,攻坚射频“卡脖子”难题
前端·人工智能·安全·前端框架·信息与通信
椎4956 小时前
苍穹外卖前端nginx错误之一解决
运维·前端·nginx
@。1246 小时前
对于灰度发布(金丝雀发布)的了解
开发语言·前端
我有一棵树6 小时前
前端图片加载失败、 img 出现裂图的原因全解析
前端
FIN66686 小时前
昂瑞微冲刺科创板:硬科技与资本市场的双向奔赴
前端·人工智能·科技·前端框架·智能
im_AMBER6 小时前
杂记 14
前端·笔记·学习·web
牧杉-惊蛰6 小时前
disable-devtool 网络安全 禁止打开控制台
前端·css·vue.js