Vue中的 computed(计算属性)与 watch(监视属性)
Vue中的 computed(计算属性)与 watch(监视属性)
-
计算属性写法(非简写形式)
computed: { fullName: { get(){ return 'zml' }, set(value){ ... } } }
那什么时候 get()会被调用呢?
首先我们得知道,computed 是有缓存的。假如你模板中有多个地方用到了
fullName
,那么它只会读第一次,即此时 get()方法只会被调用一次,后面读的都是缓存- 初次读取时
- 所依赖的数据发生变化时
-
监视属性写法(非常规)
vm.$watch('name',{ ... handler(newValue, oldValue){ ... } })
这两属性之间的区别
- watch 里面可以有异步任务
- computed 中也可以写异步,但是它是要靠 return 来返回值的,根据事件队列来讲,你异步里面写的东西没啥效果(但最终会被执行),因为 return 早就执行了
总结:能用计算属性就用计算属性,因为计算属性相对来讲实现要简单一些;计算属性实现不了了,我们再考虑监视属性
这一路,灯火通明
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 25岁的心里话
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现