computed/watch/methods分别在哪个钩子函数与区别(面试题)
在网上的搜索引擎里没有找到《computed/watch/methods分别在哪个钩子函数里》相关的介绍,今天和大家分享一下,有什么错误的地方欢迎大家评论O(∩_∩)O~
首先,我们来总结一下computed/watch/methods的区别:
computed:属性的结果会被缓存,除非依赖的响应式属性发生变化,才会重新计算,主要用来当做属性
(实际开发:用的最多)
(打一个比方:你算5件衣服价格,算完了是不是要把价格给用户看总价格。不给客户看,算起来也没有意义)
1.一定要有return值
2.只适合一些简单的计算操作
3.只要计算属性在这个function函数内部,用到的data数据发生变化,就会立即重新计算这个属性的值
4.在computed里面定义了就不可以在data里面定义了!大家千万记住......
5.计算结果会被放在缓存中,如果没有数据改变,就会直接在内存拿,不用重新计算,损耗性能!!
6.数据发生改变时-beforeupdate钩子函数中
watch:一个对象,键是需要观察的表达式(data中的数据),值是对应的回调函数,用来监听某些特定的数据变化,从而进行某些特定的业务逻辑操作,就当做是methods与computed的结合体
1.没有return值
2.在data里面定义了才可以在wacth里面使用
3.作用就是监听数据的变化,当数据改变时,相对应的以data里面数据命名的函数方法就会执行
4.watch是在数据加载完成后才能监听---mounted钩子函数中
methods:表示一系列具体的操作,适合书写大量的业务逻辑
1.可以写大量业务逻辑
2.在data里面定义了才可以在wacth里面使用
3.将data中属性和methods身上的方法添加到vue的实例身上---created钩子函数中
等哪天有时间,仔细研究一下钩子函数
大家有什么补充欢迎评论*-*
22:48:57