3.vue计算属性
1、计算属性
再vue中如果出现表达式过长或者逻辑比较复杂,这时会导致代码不清晰,臃肿,难以维护所以我们会使用计算属性进行书写
再计算属性中可以放负责的逻辑,可以是函数,表达式等,但最终会返回一个结果,再使用计算属性的时候只要数据变化,计算属性就会重新执行,
视图也就跟着重新发生变化
每一个计算属性都是用的是函数进行表示的,最终返回的是一个值
2、实现计算属性的方法
所有的计算属性都是以函数的形式写在vue实例中的computed内,最终返回的是计算之后的结果
对于计算属性来说,因为它本身返回的就是一个结果,一个值,所以很多情况下,直接作为内容输出到DOM即可,会自动的进行执行
因为计算属性最终返回的是一个值,所以很多情况下我们都是需要加上return的
3、computed是计算属性:在使用的时候返回的是一个值,都是作为函数来写的,在调用的时候直接写名字即可
methods是方法:在使用的时候本身就是一个函数,所以返回的也是函数,在调用的时候按照正常函数调用的方式进行调用才行
4、为什么在用methods的时候会自动更新:
因为在使用methods的时候,数据发生变化,组件就会重新更新,重新渲染,特点就是只要重新渲染了,那么methods中的函数就会被全部重新执行
5、使用computed不会自动刷新:
因为在使用computed的时候它是会产生缓存的,只有当数据改变的时候,才会重新计算,但是其他的计算属性是不会被执行的
所以在使用的时候计算属性要比methods方法更加的节省性能
如果是负责逻辑的话使用计算属性,执行的时候会直接从缓存中执行
<template>
<div id="app">
<p>{{reveiveMsg}}</p>
<p>{{clickA()}}</p>
<button @click="a++">按钮methods_a++</button>
<button @click="b++">按钮methods_b++</button>
<p>a:{{a}}</p>
<p>b:{{b}}</p>
<p> sum+a={{addA}}</p>
<p> sum+a={{addB}}</p>
</div>
</template> <script>
export default {
name: 'App',
data () {
return {
msg: '好好学习天天向上a' ,
isture: false,
isElseTrue:true,
a: 0,
b: 0,
sum: 20
}
},
methods: { //Imethod中写的是对事件处理的处理函数
clickA: function () {
return this.msg
},
addA: function () {
console.log("执行AA")
return this.a + this.sum
},
addB: function () {
console.log("执行BB")
return this.b + this.sum
}
},
computed: {
reveiveMsg: function () {
return this.msg
},
addA: function () {
console.log("执行AA")
return this.a + this.sum
},
addB: function () {
console.log("执行BB")
return this.b + this.sum
}
}
} </script> <style>
#app {
font-family: 'Avenir', Helvetica, Arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
text-align: center;
color: #2c3e50;
margin-top: 60px;
}
.test{
color:skyblue;
}
</style>
3.vue计算属性的更多相关文章
- Vue计算属性
github地址:https://github.com/lily1010/vue_learn/tree/master/lesson06 一 计算属性定位 当一些数据需要根据其它数据变化时,这时候就需要 ...
- 在做vue计算属性,v-for处理数组时遇到的一个bug
bug: You may have an infinite update loop in a component render function 无限循环 需要处理的数组(在 ** ssq **里): ...
- vue教程2-03 vue计算属性的使用 computed
vue教程2-03 vue计算属性的使用 computed computed:{ b:function(){ //默认调用get return 值 } } ---------------------- ...
- vue 计算属性 实例选项 生命周期
vue 计算属性: computed:{} 写在new vue()的属性,只要参与运算,数据不发生变化时,次计算只会执行一次,结果缓存,之后的计算会直接从缓存里去结果.如果其中的值发生变化(不管几个) ...
- Vue计算属性缓存(computed) vs 方法
Vue计算属性缓存(computed) vs 方法 实例 <div id="example"> <p>Original message: "{{ ...
- vue 计算属性实现过滤关键词
效果 html <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <m ...
- Vue 计算属性 && 监视属性
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="UTF-8" /> 5 & ...
- 第三节:Vue计算属性
计算属性就是当其依赖的属性的值发生变化的时候,这个属性的值就会自动更新. 例子: <!DOCTYPE html> <html> <head> <meta ch ...
- Vue#计算属性
在模板中表达式非常便利,但是它们实际上只用于简单的操作.模板是为了描述视图的结构.在模板中放入太多的逻辑会让模板过重且难以维护.这就是为什么 Vue.js 将绑定表达式限制为一个表达式.如果需要多于一 ...
- 初识Vue——计算属性和观察者
一.计算属性 在模板内使用 1.基础例子 <template> <div class="main"> <div id="reverse_st ...
随机推荐
- python中的基础坑
v = [lambda :x for x in range(10)] print(v) #[lambda :x,lambda :x....]10个匿名函数 print(v[0]) #lambda :x ...
- flask之response
import os from flask import Flask,render_template,redirect,jsonify,send_file app=Flask(__name__) #开发 ...
- 第一章 Python 基础
1. 为什么学习 Python? 答题路线:a.python的优点,b.python的应用领域广 具体: 优点 1.python语法非常优雅,简单易学 2.免费开源 3.跨平台,可以自由移植 4.可扩 ...
- Apache Module mod_reqtimeout
Apache Module mod_reqtimeout Available Languages: en Description: Set timeout and minimum data rate ...
- 处理TableVIew SectionHeader悬停问题
1,plain类型的tableview 才会悬停 grouped类型不会悬停 2,通过改变contentInset达到部分悬停遮罩的处理,对所有的Sectionheader都有效,不可以单独处理某 ...
- LibreOJ #515 贪心只能过样例
题目链接:https://loj.ac/problem/515 知识点: DP.bitset类 解题思路: DP部分不难想到:从 a 到 b 遍历,然后在已有的状态上加上遍历得到的数字的平方,难点在于 ...
- 【Java_SSM】(一)maven环境变量的配置
这篇博文我们介绍一下配置一下maven环境变量的配置. 准备工作 在eclipse配置maven之前需要我们做好准备工作,如下: 1. 安装jdk 2. 已下载好 maven,将maven配置成功 , ...
- 模板:分页JSP(结合Servlet)
DAO类(后续无需改变) package dao; import java.sql.Connection; import java.sql.PreparedStatement; import java ...
- MongoDB快速入门指南与docker-compose快体验
MongoDB快速入门指南与docker-compose快体验 MongoDB相对于RDBMS的优势 模式少 -MongoDB是一个文档数据库,其中一个集合包含不同的文档.一个文档之间的字段数,内容和 ...
- GO 使用Webhook 实现github 自动化部署
通常大家开发大部分是本地git push 提交,服务器上git pull 手动更新.git 可以使用webhook实现自动部署.webhook是仓库平台的一个钩子事件,通过hook 钩子监听代码,回调 ...