computed methods watch filters

computed(计算属性)

    计算属性该属性里面的方法必须要有return返回值,这个返回值就是(value值)。

    有几个关键点

  • 1) 计算后属性不需要在data中重复定义
  • 2) 计算后属性必须渲染后,绑定的方法才会生效这里指就是定义后的变量名在上面html中显示
  • 3) 计算后属性绑定的方法中的任意变量值更新,方法都会被调用比如说方法中一个变量A,变量A变了函数会重新调用
  • 4) 计算后属性为只读属性(不可写)计算后属性为只读属性
  • 5) 属性的结果会被缓存, 除非依赖的响应式属性变化才会重新计算, 主要 当做属性来使用;(虽然是个方法,但是当做属性使用)(场景:引用一些经过操作的数据)
1 computed: {
2     function () {
3         return this.firstName + this.lastName
4 
5     }
6 }

methods(方法)

    表示一个具体的操作, 主要写 业务逻辑;(场景:方法的调用)

    methods属性里面的方法会在数据发生变化的时候你,只要引用了此里面分方法,方法就会自动执行。这个属性没有依赖缓存

watch(监听器)

    这个监听的是data属性里面的数据,当这个数据发生变化时,将自动执行这个函数。

    主要用来 监听某些特定数据的变化,从而进行某些业务逻辑的操作; 可以看做是computedmethods的结合体;(场景:监听路由地址)

注意点

    • 1) 监听绑定的属性,该属性可以get、set
    • 2) 监听的属性一旦发生值更新,绑定的方法就会被调用
    • 3) 监听的属性是已定于的属性必须在data中定义
1 watch: {
2     firstName: function (val) {
3         this.fullName = val + ' ' + this.lastName
4     },
5     lastName: function (val) {
6         this.fullName = this.firstName + ' ' + val
7     }
8 
9 }

 filter(过滤器)

内容格式化,将输入的数据,按照某种规则进行输出,从这一层讲,感觉叫 formatter 可能更合适;

与methods中定义的一个方法使用方法差不多

原文地址:https://www.cnblogs.com/fangsmile/p/13100927.html