1. computed(计算属性)

  计算属性的结果会被缓存,除非依赖的响应式属性变化才会重新计算。注意,如果某个依赖 (比如非响应式属性) 在该实例范畴之外,则计算属性是不会被更新的。

  eg:

<p>computed={{sum}}</p>
computed: {
sum: function () {
console.log('这是cpmputed实现的a+b处理')
return Number(this.a) + Number(this.b)
}
}

  注意:当页面多次调用sum,也只会在控制台打印一次日志:'这是cpmputed实现的a+b处理',除非改变 a 或者 b 的值。

2. methods(方法)

  methods 将被混入到 Vue 实例中。可以直接通过 VM 实例访问这些方法,或者在指令表达式中使用。方法中的 this 自动绑定为 Vue 实例。
  eg:

<p>methods={{sums()}}</p>
methods: {
sums(){
console.log('这是methods实现的a+b处理')
return Number(this.a) + Number(this.b)
}
}

  注意:当页面多次调用sum,每调一次控制台打印一次日志:'这是mthods实现的a+b处理'。

3. watch(侦听属性)

  一个对象,键是需要观察的表达式,值是对应回调函数。值也可以是方法名、路由,或者包含选项的对象。Vue 实例将会在实例化时调用 $watch(),遍历 watch 对象的每一个属性。

  eg:

watch: {
a: function (val) {
console.log('这是watch a 的处理')
this.c = Number(val) + this.b
},
b: function (val) {
console.log('这是watch b 的处理')
this.c = Number(val) + this.a
}
}

  注意:Vue 提供了一种更通用的方式来观察和响应 Vue 实例上的数据变动:watch 属性。当你有一些数据需要随着其它数据的变动而变动时,很容易滥用 watch。 然而,通常更好的做法是使用计算属性而不是命令式的 watch 回调。

完整 js 如下:

<script>
export default {
data () {
return {
a: 1,
b: 2,
c: 3
}
},
computed: {
sum: function () {
console.log('这是cpmputed实现的a+b处理')
return Number(this.a) + Number(this.b)
},
c: function () {
console.log('这是cpmputed实现的a+b处理')
return Number(this.a) + Number(this.b)
}
},
methods: {
sums () {
console.log('这是methods实现的a+b处理')
return Number(this.a) + Number(this.b)
}
},
created () {
},
watch: {
a: function (val) {
console.log('这是watch a 的处理')
this.c = Number(val) + this.b
},
b: function (val) {
console.log('这是watch b 的处理')
this.c = Number(val) + this.a
}
}
}
</script>

Vue methods,watch,computed的区别的更多相关文章

  1. Vue method与computed的区别

    为了说明method与computed的区别,在此我想先来看看computed属性在vue官网中的说法: 模板内的表达式是非常便利的,但是它们实际上只用于简单的运算.在模板中放入太多的逻辑会让模板过重 ...

  2. Vue methods和computed

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  3. vue计算属性computed和methods的区别

    computed和methods的区别 在new Vue的配置参数中的computed和methods都可以处理大量的逻辑代码,但是什么时候用哪个属性,要好好区分一下才能做到正确的运用vue. com ...

  4. vue系列---理解Vue中的computed,watch,methods的区别及源码实现(六)

    _ 阅读目录 一. 理解Vue中的computed用法 二:computed 和 methods的区别? 三:Vue中的watch的用法 四:computed的基本原理及源码实现 回到顶部 一. 理解 ...

  5. vue中methods、computed、watch区别

    vue中methods.computed.watch区别methods:事件调用的钩子 computed:{ // 计算属性是根据他依赖的值计算的,当依赖值发生变化,其跟着改变 // 计算属性是依赖缓 ...

  6. vue methods computed watch区别

    一.methods和computed computed是计算属性,methods是方法. html: <p>Reversed message: "{{ reversedMessa ...

  7. Vue中method与computed的区别

    为了说明method与computed的区别,在此我想先来看看computed属性在vue官网中的说法:模板内的表达式是非常便利的,但是它们实际上只用于简单的运算.在模板中放入太多的逻辑会让模板过重且 ...

  8. vue实例属性之methods和computed

    我们可以把同一函数放在methods或者computed中,区别在于computed有缓存,计算属性只有在它的相关依赖发生改变时才会重新求值,即数据改变才会执行函数.而methods每当触发重新渲染时 ...

  9. Vuejs中关于computed、methods、watch的区别。

    Vue.js在模板表达式中限制了,绑定表达式最多只能有一条表达式,但某些数据需要一条以上的表达式运算实现,此时就可以将此数据放在计算属性(computed)当中. Vuejs中关于computed.m ...

随机推荐

  1. 【题解】[HNOI2015]菜肴制作(贪心+topo序)

    [题解][HNOI2015]菜肴制作(贪心+topo序) 题意:请你构造一个排列\(p[i]\)使得对于数组\(arc[i]=p[i]\)的字典序最小,并且对于给定的有序数对\((u,v)\)保证你给 ...

  2. 让你彻底明白TCP三次握手,四次挥手

    今天我们来讲一下TCP的三次握手和四次挥手,先来张思维导图.  一.TCP是什么 TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的.可靠的.基于字节流 ...

  3. 剑指Offer-3~9题

    3. 数组中重复的数字 题目描述: 在一个长度为 \(n​\) 的数组里的所有数字都在 \(0​\) 到 \(n-1​\) 的范围内. 数组中某些数字是重复的,但不知道有几个数字是重复的,也不知道每个 ...

  4. BFT-SMaRt:用Java做节点间的可靠信道

    目录 一.引子 二.名词统一 1. 节点id 2. 节点 3. 本地节点 4. 配置域 5. TTP 6. 陌生域 三.节点服务类 四.节点通信系统概览 五.节点通信层准备 1. 创建socket服务 ...

  5. 带限制的广搜 codeforces

    You are playing some computer game. One of its levels puts you in a maze consisting of n lines, each ...

  6. 字典树 (HDU 2072)

    lily的好朋友xiaoou333最近很空,他想了一件没有什么意义的事情,就是统计一篇文章里不同单词的总数.下面你的任务是帮助xiaoou333解决这个问题. Input有多组数据,每组一行,每组就是 ...

  7. C#与JavaScript中URL编码解码问题(转)

    混乱的URI编码 JavaScript中编码有三种方法:escape.encodeURI.encodeURIComponent C#中编码主要方法:HttpUtility.UrlEncode.Serv ...

  8. 解决.net core读取appSetting.json文件中文字符乱码

    如上所诉 vs菜单栏中  :工具 =>自定义 => 命令 =>添加命令 =>文件 =>找到高级保存选项点击 然后关闭,这时在visual studio界面就会有高级保存选 ...

  9. 【原创】Dubbo 2.7.5在线程模型上的优化

    这是why技术的第30篇原创文章 这可能是全网第一篇解析Dubbo 2.7.5里程碑版本中的改进点之一:客户端线程模型优化的文章. 先劝退:文本共计8190字,54张图.阅读之前需要对Dubbo相关知 ...

  10. java 赋值运算

    注意:在赋值运算的时候,会自动发生数据类型转变 例子 public class test{ public static void main(String[] args){ byte num = 5; ...