1,计算属性:computed。
计算属性是为了让模块表达的简介,易维护,既然你作为一个写程序的人,当然少不了代码优化,计算属性的设定就是这这一初衷。
我就拿我项目来说一说computed;
computed作为计算属性只监听自己定义的变量,该变量不在data中声明,直接在computed中定义,然后就可以在页面上进行双向绑定,因此computed适用于多个变量或者对象进行处理后返回一个结果值。
举例:我需计算这个客户买的东西总共需要多少钱
运算是不是很繁琐,直接放在dom上不易维护,所以既然人家给咱们计算属性了,咱们就老老实实的用计算属性。
看我代码
是不是感觉computed里定义的方法似曾相识,跟methods一样,这个方法定义在methods里面不会报错,照常运行,但为什么用计算属性,我跟大家说下,我也是看了看官方才明白:
methods 每调用一次就会重新计算一次,那么作为前端工程师,这种没必要的消耗能不出现就不要出现;
computed:基于响应式缓存,若其中任意一个值没有变化,它调用的是上次计算缓存的数据。
2,watch 监听属性
我们上面所说的计算属性是在初始化的时候就会执行,而监听属性是发生改变时才触发;
这个代码很明了的告诉大家的watch的特性
(1)监听属性的变量需在data中定义
(2)监听属性只有在变量发生改变才会触发
所以我们在需要数据变化或请求发送的话 用监听函数(watch)最好
他们区别我在上面零零散散说出了我的理解我就不总结了。
最后 我再说一点,大家不知道发现没,我的computed和watch用到的值都是data中的值,可为什么说watch的值是在data中定义而computed是在自身。你这样看啊 你把computed中的方法比作一个值 它是不是算是在自身定义值了。
我的理解不是很深,所以在下面放些其他博主写的。(不太会用,不知道怎么搞超链接,忘大家谅解)
https://www.cnblogs.com/gunelark/p/8492468.html