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
      }
    }

    }

相关推荐
Rhys..17 小时前
Playwright + JS 进行页面跳转测试
开发语言·前端·javascript
We་ct17 小时前
LeetCode 135. 分发糖果:双向约束下的最小糖果分配方案
前端·算法·leetcode·typescript
Yan.love17 小时前
【CSS-核心属性】“高频词”速查清单
前端·css
广州华水科技17 小时前
如何通过GNSS位移监测提升单北斗变形监测系统的精度与应用效果?
前端
郭优秀的笔记17 小时前
html鼠标悬浮提示功能
android·javascript·html
慧一居士17 小时前
npm install 各参数使用说明, 和使用场景说明
前端
冰暮流星18 小时前
if与switch的区分
javascript
xiangxiongfly91518 小时前
Vue3 h函数
vue.js·h·createvnode
小二·18 小时前
Python Web 开发进阶实战:神经符号系统 —— 在 Flask + Vue 中融合深度学习与知识图谱
前端·python·flask
Yan.love18 小时前
【CSS-动画与过渡】丝滑的艺术,从简单位移到贝塞尔曲线
前端·css