vue实例属性之methods和computed
Posted 专注前端开发
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vue实例属性之methods和computed相关的知识,希望对你有一定的参考价值。
我们可以把同一函数放在methods或者computed中,区别在于computed有缓存,计算属性只有在它的相关依赖发生改变时才会重新求值,即数据改变才会执行函数。而methods每当触发重新渲染时,就会再次执行函数。
一、methods用法
<div id="J_app"> <p>{{ info }}</p> <button v-on:click="reverseText">逆转消息</button> <button @click="reverseText">v-on缩写,逆转消息</button> </div> var vapp = new Vue({ el: ‘#J_app‘, data: { info: ‘Hello Vue.js!‘ }, methods: { reverseText: function () { this.info = this.info.split(‘‘).reverse().join(‘‘) } } })
二、computed用法
1、默认用法
<div id="J_app"> <p>{{ info }}</p> <p>{{ reverseText }}</p> </div> var vapp = new Vue({ el: ‘#J_app‘, data: { info: ‘Hello Vue.js!‘ }, computed: { reverseText: function () { return this.info.split(‘‘).reverse().join(‘‘) } } })
2、自定义set
computed默认只有get,可以自定义一个set。
<div id="J_app"> <p>{{ info }}</p> <p>{{ reverseText }}</p> </div> var vapp = new Vue({ el: ‘#J_app‘, data: { info: ‘Hello Vue.js!‘ }, computed: { reverseText: { get:function () { return this.info.split(‘‘).reverse().join(‘‘) }, set:function () { this.info = this.info.split(‘‘).reverse().join(‘‘) +‘设置后‘ } } } }) vapp.reverseText ="learn vue from today";
以上是关于vue实例属性之methods和computed的主要内容,如果未能解决你的问题,请参考以下文章