VUE-计算属性
2017-12-27 23:55
537 查看
computed/methods两种方式的最终结果确实是完全相同的。然而,不同的是计算属性是基于它们的依赖进行缓存的。计算属性只有在它的相关依赖发生改变时才会重新求值。这就意味着只要
computed/methods
View Code
REF:
http://www.runoob.com/vue2/vue-computed.html https://cn.vuejs.org/v2/guide/computed.html
message还没有发生改变,多次访问
reversedMessage计算属性会立即返回之前的计算结果,而不必再次执行函数。
computed/methods
<!-- 计算属性computed/methods --> <div style="height: 250px;background: #CCC;margin: 5px;"> <div style="font-size: 20px;"> v0.计算属性computed/methods</div> <hr /> <div> <div> <p>{{msg}}</p> </div> <div> <p>反转字符串:{{reverseMsg}}</p> </div> <div> <p>反转字符串:{{reverseMsg1()}}</p> </div> <div> <p>Setter/Getter:{{fullName}}</p> </div> </div> </div> |
<!-- 计算属性computed/methods --> <script> var vm = new Vue({ el: "#appVue", data: { msg: "ABCDEFG", msg1: "abcdefg", chPart: "Key", digPart: "123456", }, computed: { reverseMsg: function() { return this.msg.split('').reverse().join('') }, fullName: { get: function() { return this.chPart + this.digPart; }, set: function(newVar) { this.chPart = newVar; this.digPart = newVar; } } }, methods: { reverseMsg1: function() { return this.msg1.split('').reverse().join('') } } }) console.log(vm.reverseMsg); vm.msg = "AAABBB"; console.log(vm.reverseMsg); vm.fullName = "Null"; </script> |
<!DOCTYPE html> <html style="height: 100%;"> <head> <meta charset="UTF-8"> <script type="text/javascript" src="../lib/vue.v2.5.12.js"></script> <title>v-xxx</title> </head> <body style="height: 100%;"> <style> .style0 { font-size: 25px; color: green; } .style1 { background: gold; } </style> <!-- VUE-计算属性 REF: http://www.runoob.com/vue2/vue-computed.html https://cn.vuejs.org/v2/guide/computed.html --> <div id="appVue"> <!-- 计算属性computed/methods --> <div style="height: 250px;background: #CCC;margin: 5px;"> <div style="font-size: 20px;"> v0.计算属性computed/methods</div> <hr /> <div> <div> <p>{{msg}}</p> </div> <div> <p>反转字符串:{{reverseMsg}}</p> </div> <div> <p>反转字符串:{{reverseMsg1()}}</p> </div> <div> <p>Setter/Getter:{{fullName}}</p> </div> </div> </div> </div> <script> var vm = new Vue({ el: "#appVue", data: { msg: "ABCDEFG", msg1: "abcdefg", chPart: "Key", digPart: "123456", }, computed: { reverseMsg: function() { return this.msg.split('').reverse().join('') }, fullName: { get: function() { return this.chPart + this.digPart; }, set: function(newVar) { this.chPart = newVar; this.digPart = newVar; } } }, methods: { reverseMsg1: function() { return this.msg1.split('').reverse().join('') } } }) console.log(vm.reverseMsg); vm.msg = "AAABBB"; console.log(vm.reverseMsg); vm.fullName = "Null"; </script> </body> </html>
View Code
REF:
http://www.runoob.com/vue2/vue-computed.html https://cn.vuejs.org/v2/guide/computed.html
相关文章推荐
- Vue.js 学习(4) -- 计算属性和Watchers
- Vue 学习笔记 — css属性计算的问题
- 解决vue 更改计算属性后select选中值不更改的问题
- Vue的computed计算属性
- vue.js 计算属性及计算属性(computed)、methods、watched三者区别
- Vue.js笔记-计算属性 class与style绑定
- vue学习笔记---计算属性和观察者
- Vue.js 官方文档摘记 计算属性
- vue-cli 计算属性(对数据进行处理/类似过滤器)
- vue-computed计算属性
- Vuejs全家桶系列(四)---计算属性
- vue笔记--计算属性
- Vue中computed(计算属性)、methods、watch的区别
- vue踩坑系列——计算属性
- vue的计算属性(computed)、methods、watched三者区别
- Vue计算属性
- vue计算属性和监听器实例解析
- 关闭Vue计算属性自带的缓存功能方法
- vue计算属性时v-for处理数组时遇到的一个bug问题
- vue从入门到进阶:计算属性computed与侦听器watch(三)