Vue 2.0学习笔记:computed属性的使用和优点
120 浏览量
更新于2024-09-05
收藏 139KB PDF 举报
Vue 2.0 中的 Computed 属性
Computed 属性是 Vue 2.0 中的一个重要概念,它允许开发者在视图中快速计算显示的属性。这些计算将被缓存,并且只在需要时更新。
在学习 Vue 的模板相关知识时,我们知道在模板内可以使用表达式,而模板内的表达式是非常便利的。但是,这种遍历是有一定的限制的,它们实际上是用于一些简单的运算。如果在模板中放入太多的逻辑会让模板过重而且难以维护。
例如,在下面的示例中,模板不再简单和清晰:
```html
<div id="app">
<h1>{{ message.split('').reverse().join('') }}</h1>
</div>
```
在这个示例中,模板不再简单和清晰。你必须看一段时间才能意识到,这里是想要显示变量 `message` 的翻转字符串。当你想要在模板中多次引用此处的翻转字符串时,就会更加难以处理。
这就是对于任何复杂逻辑,你都应当使用计算属性的原因。计算属性可用于快速计算视图(View)中显示的属性。这些计算将被缓存,并且只在需要时更新。
在 Vue 中,有多种方法为视图设置值:
1. 使用指令直接将数据值绑定到视图
2. 使用简单的表达式对内容进行简单的转换
3. 使用过滤器对内容进行简单的转换
4. 使用计算属性根据数据模型中的值或一组值来计算显示值
计算属性允许我们对指定的视图,复杂的值计算。这些值将绑定到依赖项值,只在需要时更新。例如,我们可以在数据模型中有一个 `results` 数组:
```javascript
data() {
return {
results: [
{
name: 'English',
marks: 70
},
{
name: 'Math',
marks: 80
},
{
name: 'History',
marks: 90
}
]
}
}
```
假设我们想要查看所有主题的总数。我们不能使用 filters 或 expressions 来完成这个任务。filters 用于简单的数据格式,在应用程序的多个位置都需要它;expressions 不允许使用流操作或其他复杂的逻辑。他们应该保持简单。
这个时候,计算属性就可以派上用场。我们可以向模型中添加一个计算值,如下:
```javascript
computed: {
totalMark() {
// 计算总分
return this.results.reduce((acc, curr) => acc + curr.marks, 0);
}
}
```
在上面的示例中,我们使用计算属性来计算总分。这个计算将被缓存,并且只在需要时更新。
计算属性的优点:
1. 简化模板中的逻辑
2. 提高应用程序的性能
3. 使代码更加易于维护
计算属性是 Vue 2.0 中一个非常有用的功能,它可以帮助我们简化模板中的逻辑,提高应用程序的性能,并使代码更加易于维护。
2022-06-14 上传
2018-02-01 上传
2021-03-16 上传
2020-08-29 上传
点击了解资源详情
2020-10-20 上传
2022-05-07 上传
2020-10-15 上传
2020-08-31 上传
weixin_38724919
- 粉丝: 5
- 资源: 991
最新资源
- 时间触发打开画面.zip昆仑通态触摸屏案例编程源码资料下载
- 行业数据-20年7月份快手短视频用户地域分布.rar
- Class:Class.js - 一种使用 Javascript 创建类的简单方法
- codeChallenges:小婴儿的编码挑战
- Phonesky:非正式的Google PlayStore客户端
- 使用Arduino Nano和Adafruit NeoPixel Matrix的数字计分器-电路方案
- 行业数据-20年9月份中国消费者购买饰品线上渠道分布情况.rar
- 点文件
- 行业数据-20年6月份中国主流视频平台月份活跃用户数.rar
- 进口NROS
- 汽车音响-项目开发
- ActiveMQ:activeMQ消息封装,主要解决:事务性消息、消息幂等性、异常造成的消息丢失问题 本项目不在更新,新项目请看ReliableMessageSystem
- My-Personal-Website:一个关于我的网站! 将在未来几周内更新
- Android-Test-With-JUnit-Mockito-RoboElectric
- crwn-clothing
- 待办事项