computed和watch的区别,哪个可以异步操作?

  • computed 是计算属性,依赖其他属性计算值,并且 computed 的值有缓存,只有当计算值变化才会返回内容。
  • watch 监听到值的变化就会执行回调,在回调中可以进行一些逻辑操作。
  • 所以一般来说需要依赖别的属性来动态获得值的时候可以使用 computed,对于监听到值的变化需要做一些复杂业务逻辑的情况可以使用 watch
  • 另外 computer 和 watch 还都支持对象的写法,这种方式知道的人并不多。
vm.$watch('obj',{
    deep: true.
    immediate: true,
    hander: function(val, old) {}
})

var vm = new Vue({
    data: {a: 1},
    computed: {
      aplus:{
        get: function(){
            return this.a+1
            },
        set: function(){
            this.a = v -1
            }
        }
    }
})

 

你可能感兴趣的:(前端,javascript,开发语言)