Vue中computed和watch的区别

1.computed:

计算属性注重在一个值变化时改变另一个值,在依赖发生变化时或vue初始化时会执行,执行时使用的是依赖项的newValue而非oldValue,必须return一个值(给到计算属性),无法异步执行,

必须是同步方法,无法用于更改dom(更改dom应该是异步方法)
2.watch:

1)注重对data或computed中的属性的监听,相当于给属性配置一个onchange事件,在监听的属性值发生变化时执行,

默认vue初始化时不会执行(除非加上immediate:true,此时oldValue传入的是undefined).

回调会传入oldValue和newValue

2)深度监听:如果监听的属性为一个包含多个子属性的对象时,如果需要在子属性发生变化时触发watch监听事件,则需要显式的配置deep:true

3)可以进行http请求/更改dom任何同步异步操作.

参考文档:一文弄清楚Vue中的computed与watch的区别 - 知乎 (zhihu.com)

相关推荐
boooooooom3 分钟前
Vue3 provide/inject 跨层级通信:最佳实践与避坑指南
前端·vue.js
一颗烂土豆3 分钟前
Vue 3 + Three.js 打造轻量级 3D 图表库 —— chart3
前端·vue.js·数据可视化
青莲8433 分钟前
Android 动画机制完整详解
android·前端·面试
iReachers6 分钟前
HTML打包APK(安卓APP)中下载功能常见问题和详细介绍
前端·javascript·html·html打包apk·网页打包app·下载功能
颜酱8 分钟前
前端算法必备:双指针从入门到很熟练(快慢指针+相向指针+滑动窗口)
前端·后端·算法
lichenyang4539 分钟前
从零开始:使用 Docker 部署 React 前端项目完整实战
前端
沉静的思考者10 分钟前
vue优雅的适配无障碍
vue.js
明月_清风11 分钟前
【开源项目推荐】Biome:让前端代码质量工具链快到飞起来
前端
愈努力俞幸运11 分钟前
vue3 demo教程(Vue Devtools)
前端·javascript·vue.js
持续前行12 分钟前
在 Vue3 中使用 LogicFlow 更新节点名称
前端·javascript·vue.js