*在Vue中什么情况用computed,watch,methods个人理解
computed
- computed用来监控自己定义的变量,该变量不用在data里边声明,直接在computed里定义
- computed比较适合对多个变量或者对象进行处理后返回结果,也就是当多个变量中某一个变量值发生了变化则我们监控的这个值也会发生变化。比如:购物车总金额的变化和全选状态的变化。
- computed只有在它依赖的数据发生变化时才执行,如果所依赖的数据没有发生变化,返回的都是之前缓存的值
watch
- watch主要监控vue实例的变化,它监控的变量必须在data里声明,它可以监听一个变量,也可以监听一个对象,但是要监听对象内部属性值的变化,需要设置deep为true(深度监听)
- watch一般用于监控路由,input输入框的值特殊处理等,它比较适合的场景是一个数据影响多个数据
methods
- 需手动调用才会执行
- 调用一次执行一次,没有依赖缓存机制