Vue.js computed vs Methods
2017-03-09 18:29
801 查看
https://cn.vuejs.org/v2/guide/computed.html#计算缓存-vs-Methods
我们可以使用methods 来完成计算属性需要完成的事,
最终结果二者是一样的。
区别:
官网表明计算属性是基于它的依赖缓存。
计算属性只有在它的相关依赖发生改变时才会重新取值。这就意味着只要
每当重新渲染的时候,method
调用总会执行函数。
也就是说只要不是直接使用浏览器刷新页面,当我们改变数据、DOM操作等引起页面重新渲染时,
计算属性会直接使用缓存,不会重新执行函数。适合那些计算量很大且改变频率很低的属性;
如果使用methods,每次页面重新渲染时都会重新执行methods函数。
<div id="example"> <p>Original message: "{{ message }}"</p> <p>Computed reversed message: "{{ reversedMessage }}"</p> </div>
var vm = new Vue({ el: '#example', data: { message: 'Hello' }, computed: { // a computed getter reversedMessage: function () { // `this` points to the vm instance return this.message.split('').reverse().join('') } } })
我们可以使用methods 来完成计算属性需要完成的事,
// in component methods: { reverseMessage: function () { return this.message.split('').reverse().join('') } }
最终结果二者是一样的。
区别:
官网表明计算属性是基于它的依赖缓存。
计算属性只有在它的相关依赖发生改变时才会重新取值。这就意味着只要
message没有发生改变,多次访问
reversedMessage计算属性会立即返回之前的计算结果,而不必再次执行函数。
每当重新渲染的时候,method
调用总会执行函数。
也就是说只要不是直接使用浏览器刷新页面,当我们改变数据、DOM操作等引起页面重新渲染时,
计算属性会直接使用缓存,不会重新执行函数。适合那些计算量很大且改变频率很低的属性;
如果使用methods,每次页面重新渲染时都会重新执行methods函数。
一.computed适用于对多数据变动进行监听,然后维护一个状态(返回一个状态)。
二.watch适用于对一个数据监听,我们也可以通过这些变化去维护一个状态,但不适用于监听一个数据来进行复杂的逻辑操作。
相关文章推荐
- Vue.js computed vs Methods区别
- vue.js 计算属性及计算属性(computed)、methods、watched三者区别
- vue.js中的computed和methods和watch之间的区别
- 实例分析Vue.js中 computed和methods不同机制
- vue.js——computed属性与methods属性的区别
- Vue.js中computed、methods、watch的使用
- 深入浅析Vue.js中 computed和methods不同机制
- vue.js重学之旅(2)——vue.js里的数据操作(data,methods,computed,watch)
- vue的 计算属性(computed)、methods、watched三者区别
- Reactjs vs. Vuejs
- Reactjs vs. Vuejs
- vue 计算属性computed和观察watch 和方法methods
- vue.js的computed,filter,get,set的用法及区别
- vue的计算属性(computed)、methods、watched三者区别
- Vue.js第三天学习笔记(计算属性computed)
- Vue.js vs React
- Vue.js的computed和watch用法及区别
- [Vue] Use Vue.js Component Computed Properties
- Vue.js学习 Item5 -- 计算属性computed与$watch
- Reactjs vs. Vuejs