watch和computed区别

来源:2-4 计算属性与侦听器

hongli

2019-12-15 23:35

没听明白他两个有什么本质区别,computed能监听多个属性的变化是因为写了多个,在watch里写多个也是能监听到的 ,他俩的区别应该不是剩代码这么简单吧?老师能细讲一下吗?

写回答 关注

3回答

  • Brian
    2019-12-18 20:39:46

    官方的例子也写的非常的清楚,https://cn.vuejs.org/v2/guide/computed.html

    这里也有一个介绍: https://cn.vuejs.org/v2/guide/computed.html#%E8%AE%A1%E7%AE%97%E5%B1%9E%E6%80%A7-vs-%E4%BE%A6%E5%90%AC%E5%B1%9E%E6%80%A7

    computed更适合Vue中的多个变量需要同时监听的场景:

    var vm = new Vue({  
        el: '#demo',  
        data: {    
        firstName: 'Foo',    
        lastName: 'Bar'
      },  
      computed: {    
          fullName: function () {      
              return this.firstName + ' ' + this.lastName
          }
      }
    })



  • ITer在路上
    2019-12-30 16:19:46

    1、watch:当监测的属性变化时会自动执行对应的回调函数

    2、computed:计算的属性只有在它的相关依赖发生改变时才会重新求值


  • OP小豪
    2019-12-17 11:12:58

    watch里是不能拼接字符串的,只可以监听固定的变量

    computed可以有一些计算或者拼接的操作

3小时速成 Vue2.x 核心技术

带你快速学习最流行的前端框架vue2.x的核心技术

82560 学习 · 487 问题

查看课程

相似问题