computed计算属性和getters
时间: 2024-09-20 10:07:06 浏览: 42
Vue computed 计算属性代码实例
在Vue.js中,`computed` 和 `getters` 都是用来创建动态计算属性的工具,它们都是响应式的,能够自动更新视图,但有不同的作用和使用场景:
1. **Computed属性**(也称为计算属性或计算函数):它是基于其他数据属性的一种计算结果。当你设置或修改依赖的数据属性时,`computed` 属性会自动重新计算其值。你可以直接使用 `this` 关键字访问组件实例的属性,并可以包含任意复杂的逻辑。例如:
```javascript
data() {
return {
message: 'Hello'
}
},
computed: {
uppercaseMessage() {
return this.message.toUpperCase()
}
}
```
在这个例子中,`uppercaseMessage` 就是一个计算属性,它总是显示 `message` 的大写形式。
2. **Getters (Vuex 中)**:在 Vuex 状态管理库中,`getters` 相当于 Vue 的 `computed`,但主要用于读取 store 中的状态。它们用于从全局状态中提取相关数据并提供给组件。例如,在 Vuex 中:
```javascript
import { getters } from '@/store'
export default {
computed: {
...mapGetters(['user'])
}
}
```
这里的 `user` 就是从 Vuex store 中获取用户信息的 getter。
阅读全文