Vue · 单选题 · 第 51 题
前端与全栈开发面试 · 第 51 题
关于 Vue 的 computed 和 watch,下列说法正确的是?
- Acomputed 每次被读取都会重新执行一遍计算函数,没有缓存
- Bwatch 会缓存回调的返回值,依赖没有变化时直接返回缓存结果
- Ccomputed 基于依赖缓存,依赖不变时多次读取不会重新计算
- Dcomputed 最适合执行异步请求,并在请求完成后修改其他状态
答案
C C. computed 基于依赖缓存,依赖不变时多次读取不会重新计算
解析
computed 是带缓存的派生值,只有依赖变化后才会在下次读取时重新计算,适合由已有状态推导出新值。watch 用来在数据变化时执行副作用,比如发请求、写本地存储,支持异步和拿到旧值。computed 里不应该有副作用,也不应该写异步逻辑。