十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
计算属性
创新互联公司于2013年开始,先为南山等服务建站,南山等地企业,进行企业商务咨询服务。为南山企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
表达式是非常便利的,但是它们实际上只用于简单的运算。在模板中放入太多的逻辑会让模板过重且难以维护,所以引入了计算属性computed,将复杂的逻辑放入计算中进行处理,同时computed有缓存功能,防止复杂计算逻辑多次调用引起的性能问题。
computed原理
computed的属性reversedMessage在data中会有一个对我们不可见的cacheReversedMessage属性对应
cacheReversedMessage的值是根据其绑定的data中的message来决定的 获取reversedMessage会返回
cacheReversedMessage的值 message更新之后会立马调用reversedMessage的get方法去给cacheReversedMessage赋值(无论reversedMessage在dom中是否使用) cacheReversedMessage的值发生变化时,相应的dom也会发生变化
注意:computed中的属性和data中的属性名字不能相同,一个属性要么在data里;要么在computed里,computed里的属性要跟data中的配合使用,当data属性发生变化时才会调用get方法更新reversedMessage的值,否则get方法即使返回一个随机数,reversedMessage的值也不会变。
示例代码
computed相当于属性的一个实时计算,如果实时计算里关联了对象,那么当对象的某个值改变的时候,同事会出发实时计算。
比如:
当vm.$data.childrens.age
这个值改变的时候,动态触发computed里的age属性计算,最后显示到页面的结果是:20。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对创新互联的支持。