Vue2面试题:watch和computed的区别

2023-12-24 06:30:02

? ??computed计算属性:

? ? ? ? 1、如果一个数据需要经过复杂计算就用computed

? ? ? ? 2、支持缓存,只有依赖数据发生改变时,才会重新进行计算

? ? ? ? 3、不支持异步,当计算属性内有异步操作时,无法监听到数据的变化。原因:定义的函数接收return的结果,return属于同步执行的,是没办法拿到异步请求结果的

? ? ? ? 4、计算属性只能取不能存,即不能对计算属性直接赋值。如需要存,要给计算属性手动添加setter

? ??watch监听器:

? ? ? ? 1、如果一个数据需要被监听并且对数据做一些操作就用watch

? ? ? ? 2、不支持缓存,数据变化会直接触发相应的操作

? ? ? ? 3、支持异步

? ? ? ? 设置deep:true? 开启深度监听,如果监听的是对象类型,当手动修改对象的某个属性时,可以被监听到

? ? ? ? 设置immediate:true? watch初始化时会立即执行一次handler方法

文章来源:https://blog.csdn.net/m0_74802419/article/details/135176131
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。