请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

对于computed VS watch的一点理解

对于有依赖值的变量(如total就是依赖于 price 和 count的计算结果) ,使用computed始终优于watch。因为watch在变量层面一次只可以监听一个值,在代码量要比computed要多上一些。尤其是当有依赖变量的计算过程变得很复杂时,computed值得优先考虑。

请问老师这样的理解可以么?

正在回答 回答被采纳积分+3

2回答

程煦儿 2021-08-13 17:30:41
  1. 如果对多个属性进行监听时,computed确实比watch更简洁一些,必定它在一个方法体内就能完成多个属性的监听,而watch需要一个一个监听;

  2. 如果只对一个属性监听时,watch最终要修改或同步的数据必须是在data中声明的过的属性,而computed则不用提前声明,直接返回即可。至于dell老师说的watch中需要声明一个函数,其实在computed中也同样用了一个函数,在这点上我觉得并不能凸显computed的优越性;

  3. watch其实还有更高级的api,如deep、immediate、handler等,这就决定了一些场景下watch其实比computed更适合;

  4. 最后,个人想表达的是,到底该用computed还是watch,这要完全取决于业务的场景,毕竟真实的应用中如老师举例子这么简单的还是很少的。

    不对之处,还请指正~

1 回复 有任何疑惑可以回复我~
  • Dell #1
    你说的很对
    回复 有任何疑惑可以回复我~ 2021-08-15 22:58:55
Dell 2021-08-15 22:59:00

可以这么理解

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信