请稍等 ...
×

采纳答案成功!

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

提前调用 defineComputed

视频中说到,在 Comp.prototype 提前调用 defineComputed,是为了给多组件共享用。平时工作中,没有遇到过 computed 共享案例,有点不太理解 黄老师能举个例子吗

正在回答

1回答

我的意思是给同一个组件的多个实例所共享,因为 initComputed 发生在 Vue.extend 阶段,也就是组件构造器的生成阶段。这样未来在实例化组件的的时候,这些已经执行过 defineComputed 的 key 就不需要重复去执行了。

1 回复 有任何疑惑可以回复我~
  • 提问者 Arey_jy #1
    非常感谢!
    回复 有任何疑惑可以回复我~ 2018-11-17 19:29:19
  • 不好意思,借个楼,老师您好,我想问问为什么只有props和computed是在组件原型上就已经初始化好了的呢? 为什么其他的比如, methods, data, watch等等不在原型里面初始化呢。
    回复 有任何疑惑可以回复我~ 2019-10-25 21:15:45
  • // For props and computed properties, we define the proxy getters on
        // the Vue instances at extension time, on the extended prototype. This
        // avoids Object.defineProperty calls for each instance created.
    把这段注释翻译成中文,就是原因了
    回复 有任何疑惑可以回复我~ 2019-10-26 17:53:23
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信