computed是计算树形,methods是方法。

new Vue({
  el: '#example',
  data: {
    message: 'Hello'
  },
  computed: {
    reversedMessage: function () {
     return this.message.split('').reverse().join('')
    }
  },
  methods: {
    reversedMessage: function () {
     return this.message.split('').reverse().join('')
    }
  }
})

两种方法执行的结果是一样的,不同的是computed计算属性是基于他们的依赖进行缓存的,computed只有在它的相关依赖发生改变时才会重新求职。这就意味着只要message还没有发生改变,多次访问reversedMessage,计算属性就会立即返回之前的计算结果,而不会再次执行函数。method只要发生重新渲染,methods调用总会执行该函数。

总之:数据量大,需要缓存的时候用computed;每次确实需要重新加载,不需要缓存时用methods。

computed 和 watch 都可以观察页面的数据变化。当处理页面的数据变化时,我们有时候很容易滥用watch。 而通常更好的办法是使用computed属性,而不是命令是的watch回调。 

总之:尽量用computed计算属性来监视数据的变化,因为它本身就这个特性,用watch没有computed“自动”,手动设置使代码变复杂。

虽然计算属性在大多数情况下是非常适合的,但是在有些情况下我们需要自定义一个watcher,在数据变化时来执行异步操作,这时watch是非常有用的。

最新文章

  1. [bigdata] hadoop 参数配置解析
  2. selenium Remote Server 实现原理
  3. struts-OGNL
  4. android 启动过程
  5. Oracle 查询字段在什么表
  6. SpringMVC学习总结(二)——DispatcherServlet详解
  7. Tomcat内存溢出的原因
  8. 和阿木聊Node.js
  9. 第六周 G题
  10. POJ1062 昂贵的聘礼 【DFS】
  11. Java IO流之对象流
  12. CSS备战春招の二
  13. [poj2585]Window Pains_拓扑排序
  14. C 标识符, 数据存储形式(原码,反码,补码)
  15. Zabbix安装部署(CentOS系统下)
  16. L-BFGS算法(转载)
  17. Linux的简单介绍.
  18. pyhanlp 中文词性标注与分词简介
  19. 【nlp】中文分词基础原则及正向最大匹配法、逆向最大匹配法、双向最大匹配法的分析
  20. Centos之关机和重启命令

热门文章

  1. 初识MySQL <一>
  2. sql server 获取随机数函数RAND()和RAND(x)
  3. 使用QtXlsx来读写excel文件
  4. icmp, IPPROTO_ICMP - Linux IPv4 ICMP 核心模块.
  5. [转载]一个支持Verilog的Vim插件——自动插入always块
  6. Centos 7.5 双网卡内外网同时访问路由设置
  7. ListView的创建
  8. pushd&popd&dirs命令
  9. springMVC项目访问URL链接时遇到某一段然后忽略后面的部分
  10. Gym-100923L-Por Costel and the Semipalindromes(进制转换,数学)