⚡ 编程实验室🏗️ HTML🎨 CSS⚡ JavaScript🐍 Python🗄️ SQL☕ Java⚛️ React💚 Vue🟢 Node.js⚙️ C语言🐘 PHP🐹 Go🔷 TypeScript🐬 MySQL🔧 C++🎯 C#🦀 Rust🅱️ Bootstrap💡 jQuery🎸 Django🍃 MongoDB👗 Sass🎪 Kotlin📊 R语言📋 XML📊 Excel🐘 PostgreSQL🐳 Docker🅰️ Angular🎮 游戏🏠 网站首页

Vue 计算属性 computed

computed 基于已有数据计算新数据,自动缓存,比 methods 更高效 · 难度:入门 · +20XP

computed — 自动计算的值

computed 是"计算属性"——它根据其他数据自动算出一个新值

比如购物车:总价 = 商品单价 × 数量。总价不需要单独存,它是"算出来"的。

基本用法

data() {
  return { price: 99, quantity: 1 }    <!-- 原始数据 -->
},
computed: {
  total() {
    return this.price * this.quantity  <!-- 总价 = 单价 × 数量 -->
  }
}

在模板中使用:{{ total }}(像访问普通属性一样,不用加括号)

computed 和 methods 的区别

computedmethods
✅ 有缓存,依赖不变就不会重算❌ 每次调用都重新计算
访问方式:{{ total }}访问方式:{{ getTotal() }}
适合:基于现有数据算出新数据适合:事件处理、DOM 操作

比如 total 依赖 pricequantity。只要这两个值没变,访问 100 次 total 也只会计算一次。

动手试试

  1. 右边是一个购物车,修改数量看总价自动变化
  2. 当商品总价超过 100 元,运费自动免掉
  3. 试试修改单价,观察所有计算属性一起更新
Ctrl+Enter
🚀 升级VIP
解锁全部课程+AI助手

🏆 学习排行

加载中...

📊 统计

📖 125 篇
0 完成
🔥 0