watch监听(数组或者对象)

摘要:
处理程序:用于侦听数组或对象的属性的方法deep:deep侦听。要查找对象内部值的更改,可以在选项参数中指定deep:true。请注意,这对于监视阵列更改是不必要的。每次计算方法下的数据

handler:监听数组或对象的属性时用到的方法

deep:深度监听,为了发现对象内部值的变化,可以在选项参数中指定 deep:true 。注意监听数组的变动不需要这么做。

immediate: 在选项参数中指定 immediate: true 将立即以表达式的当前值触发回调

tips: 只要bet中的属性发生变化(可被监测到的),便会执行handler函数;如果想监测具体的属性变化,如pokerHistory变化时,才执行handler函数,则可以利用计算属性computed做中间层。

1、普通的watch
按 Ctrl+C 复制代码

data() {
return {
  frontPoints: 0
}
},
watch: {
frontPoints(newValue, oldValue) {
  console.log(newValue)
}
}


按 Ctrl+C 复制代码
2、数组的watch
复制代码
data() {
 return {
   winChips: new Array(11).fill(0)
 }
},
watch: {
  winChips: {
 handler(newValue, oldValue) {
   for (let i = 0; i < newValue.length; i++) {
  if (oldValue[i] != newValue[i]) {
      console.log(newValue)        
     }
  }
   }, 
  }
}
复制代码

3、对象的watch

复制代码
data() {
  return {
    bet: {
      pokerState: 53,
      pokerHistory: 'local'
    }
 }
},
watch: {
  bet: {
    handler(newValue, oldValue) {
      console.log(newValue)    
},
    deep: true
  }
}
复制代码

4、对象具体属性的watch[活用computed]

复制代码
data() {
  return {
    bet: {
      pokerState: 53,
      pokerHistory: 'local'
    } 
  }
},
computed: {
  pokerHistory() {
    return this.bet.pokerHistory
  }
},
watch: {
  pokerHistory(newValue, oldValue) {
    console.log(newValue)
  }
}
复制代码
5、watch和computed各自处理的数据关系场景不同

watch擅长处理的场景:一个数据影响多个数据
computed擅长处理的场景:一个数据受多个数据影响

6、method和computed触发条件不同
computed只提供了缓存的值,而没有重新计算
只有符合:1.存在依赖型数据 2.依赖型数据发生改变这两个条件,computed才会重新计算。
而methods下的数据,是每次都会进行计算的

免责声明:文章转载自《watch监听(数组或者对象)》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇xcode 一些三方库版本警告 iOS Simulator deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0, but the range of supported deployment target versions is 9.0 to 14.2.99.VPS速度测试(4):上传下载速度、服务器带宽、Ping响应时间下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

C#6.0语言规范(十二) 数组

数组是一种数据结构,包含许多通过计算索引访问的变量。包含在数组中的变量(也称为数组的元素)都是相同的类型,这种类型称为数组的元素类型。 数组具有确定与每个数组元素相关联的索引数的等级。数组的等级也称为数组的维度。秩为1的数组称为一维数组。秩大于1的数组称为多维数组。特定大小的多维阵列通常被称为二维阵列,三维阵列等。 数组的每个维度具有相关联的长度,该长度是...

Java ArrayList【笔记】

Java ArrayList【笔记】 ArrayList ArrayList基本结构 ArrayList 整体架构比较简单,就是一个数组结构 源码中的基本概念 index 表示数组的下标,从 0 开始计数 elementData 表示数组本身 DEFAULT_CAPACITY 表示数组的初始大小,默认是 10 size 表示当前数组的大小,类型 int,...

WeakReference 在android中的应用

首先我们来看一段代码: public class AutoActivity extends Activity { Handler handler = new Handler(){ public void handleMessage(android.os.Message msg) {...

JS----对象的合并与克隆与数组的深浅克隆

在js中,数组和对象的复制如果使用=号来进行复制,那只是浅拷贝。如下图演示: 如上,arr的修改,会影响arr2的值,这显然在绝大多数情况下,并不是我们所需要的结果。因此,数组以及对象的深拷贝就是javascript的一个基本功了。 对象: 一. 合并与克隆的差别 1. 克隆是特殊的合并(以空对象作为目标对象,非空对象作为源对象进行合并),克隆要求目标...

JAX-WS HandlerChain使用详解

JAX-WS的Handler和Servlet的Filter相似,可以对所有WebServicer进行拦截,在Handler中可以记录日志、权限控制、对请求的SOAP消息进行加密,解密等。JAX-WS提供两个Handler接口,LogicalHandler和SOAPHandler。LogicalHandler处理的是Message Payload,只能够访...

十个PHP开发者最容易犯的错误

文章引用链接:http://www.phpxs.com/post/5974/ PHP 语言让 WEB 端程序设计变得简单,这也是它能流行起来的原因。但也是因为它的简单,PHP 也慢慢发展成一个相对复杂的语言,层出不穷的框架,各种语言特性和版本差异都时常让搞的我们头大,不得不浪费大量时间去调试。这篇文章列出了十个最容易出错的地方,值得我们去注意。 易犯错误...