zoukankan      html  css  js  c++  java
  • vue computed、methods、watch的区别

    1.computed(计算属性)
    computed是计算属性,事实上和和data对象里的数据属性是同一类的(使用上),

    2.methods(方法)
    写在html中的时候需要带()支持传参,且需要有触发条件(@)。
    methods里面是用来定义函数的,很显然,它需要手动调用才能执行。而不像watch和computed那样,“自动执行”预先定义的函数。
    methods里面定义的是函数,你显然需要像"fuc()"这样去调用它(假设函数为fuc)。
    methods不处理数据逻辑关系,只提供可调用的函数。

    3.watch
    类似于监听机制+事件机制。

    4.watch/computed
    当某一个数据(称它为依赖数据)发生变化的时候,所有依赖这个数据的“相关”数据“自动”发生变化,也就是自动调用相关的函数去实现数据的变动。
    都是希望在依赖数据发生改变的时候,被依赖的数据根据预先定义好的函数,发生“自动”的变化。
    watch擅长处理的场景:一个数据影响多个数据。
    computed擅长处理的场景:一个数据受多个数据影响。
    methods里面的函数就是一群“耿直Boy”,如果有其他父函数调用它,它会每一次都“乖乖”地执行并返回结果,即使这些结果很可能是相同的,是不需要的。
    而computed是一个“心机Boy”,它会以Vue提供的依赖追踪系统为基础,只要依赖数据没有发生变化,computed就不会再度进行计算。

  • 相关阅读:
    74.Interesting Sequence(有趣的数列)(拓扑排序)
    CODEVS 1746 贪吃的九头龙
    NYOJ 110 剑客决斗
    CODEVS 2451 互不侵犯
    洛谷 P1896 互不侵犯King
    洛谷 P1066 2^k进制数
    洛谷 P1656 炸铁路
    洛谷 P1830 轰炸Ⅲ
    CODEVS 1051 接龙游戏
    POJ 3461 Oulipo
  • 原文地址:https://www.cnblogs.com/7Ezreal/p/9945127.html
Copyright © 2011-2022 走看看