查看“Vue从入门到实战:计算属性缓存”的源代码
←
Vue从入门到实战:计算属性缓存
跳转至:
导航
,
搜索
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看与复制此页面的源代码。
复杂的表达式也可以放到方法中去实现,然后在绑定表达式中调用方法即可。 <nowiki> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>计算属性</title> </head> <body> <div id="app"> <p>原始字符串: {{ message }}</p> <p>方法调用后的反转字符串: {{ reversedMessage() }}</p> </div> <script src="vue.js"></script> <script> var vm = new Vue({ el: '#app', data: { message: 'Hello,Vue.js无难事!' }, methods: { reversedMessage: function () { return this.message.split('').reverse().join('') } } }) </script> </body> </html></nowiki> 既然使用方法能实现与计算属性相同的结果,那么还有必要使用计算属性吗 ? 计算属性是基于它的响应式依赖进行缓存的,只有在计算属性的相关依赖发生改变时才会求值,而如果采用方法,那么不管什么时候访问reversedMessage(),该方法都会被调用。 计算属性的这种缓存特性,在下面这个例子中也有体现: <nowiki><!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>计算属性</title> </head> <body> <div id="app"> <p>原始字符串: {{ message }}</p> <p>计算后的反转字符串: {{ reversedMessage }}</p> <p>方法调用后的反转字符串: {{ reversedMessage2() }}</p> </div> <script src="vue.js"></script> <script> var vm = new Vue({ el: '#app', data: { message: 'Hello,Vue.js无难事!' }, computed: { // 计算属性的 getter reversedMessage: function () { alert("计算属性"); return this.message.split('').reverse().join('') } }, methods: { reversedMessage2: function () { alert("方法"); return this.message.split('').reverse().join('') } } }) let msg = vm.reversedMessage; msg = vm.reversedMessage2(); </script> </body> </html></nowiki>
返回至
Vue从入门到实战:计算属性缓存
。
导航菜单
个人工具
登录
命名空间
页面
讨论
变种
视图
阅读
查看源代码
查看历史
更多
搜索
导航
首页
最近更改
随机页面
帮助
工具
链入页面
相关更改
特殊页面
页面信息