Vue初体验(九)计算属性

xiaoxiao2021-02-28  116

1、computed Vue的参数对象里面,会有一个computed属性,它的作用是:computed相当于属性的一个实时计算,如果实时计算里关联了对象,那么当对象的某个值改变的时候,同时会出发实时计算。

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>vue学习</title> <script type="text/javascript" src="https://unpkg.com/vue/dist/vue.js"></script> </head> <body> <div id="app"> <span>{{message}}</span> <span>{{reverse}}</span> </div> <script> var vm = new Vue({ el:"#app", data:{ message:"12345" }, computed:{ reverse: function () { return this.message.split("").reverse().join(""); } } }); </script> </body> </html>

2、method 同样,利用定义方法的方式也能够达到计算属性的目的。

method和computed有什么区别呢?

method是只要发生了重新渲染,它总会执行method方法。但是computed是只要相应的响应式依赖没有发生变化,它不主动执行,哪怕界面已经刷新!!

computed更多的像是监听,而method是执行方法。

3、watch

在某种程度上和computed是一样的,都代表着监听,但是watch监听的是一项属性,而computed是只要它内部的依赖的响应式的属性发生改变,它就会发生改变。

如果仅仅想简单的理解一下,可以这么想,watch的监听太单一,computed正合适。

4、computed,该注意的地方。

一定要注意,computed监听的是响应式的属性数据,而非相应式的如同Date.now(),我们的需求可能是每次得到一个当前时间,而computed只会执行一次,这时候可能我们需要使用method更合适一些。

转载请注明原文地址: https://www.6miu.com/read-61298.html

最新回复(0)