Computed:
支持缓存,当依赖的数据发生变化后,才会重新计算
不支持一步操作,当它里面有 异步操作时,无法监听数据的变化
计算属性的值 默认会缓存,它是基于响应式依赖进行缓存的,就是 基于data声明过 或者 从父组件传递过来的props中的数据进行金酸
如果一个属性是由其他属性计算而来,那么一般会使用计算属性
如果 计算属性的属性值是函数,那么默认会使用get 方法,函数的返回值就是属性的属性值,在计算属性中,有get和set方法,当数据发生变化时,会调用set方法
Watch:
不支持缓存,当数据发生变化时,他就会触发,之后进行对应的操作
它支持异步监听
监听的函数会接收两个参数,第一个参数是新值,第二个参数是 旧值
当一个属性发生变化时,就会执行对应的操作
监听数据必须在data中声明 或这 从父组件传递过来的props中的数据 当发生变化时,会触发对应的操作,函数有两个参数:
immediate:组件加载会直接触发回调函数
deep:深度监听,发现数据内部的变化,在复杂数据类型中使用.这里要注意的是 deep无法监听到数组和对象内部的变化.