• 过滤器,计算属性,属性侦听器


    过滤器filters

    过滤器中的函数一般写在filters中

    过滤器一般写法{{msg|fn(10,20)|fm}}

    若msg是一个非函数数据msg将作为fn的第一个参数传入fn 10,20是第2,3个参数,fn返回的值再作为参数传给fm最后返回的值显示页面上

    数据改变时,页面重新渲染,标签就会重新过滤显示

    1. "app">
    2. <p>{{timerformatter(birth)}}p>
    3. <p>{{birth|tool|tool2}}p>
    4. <p>{{birth|tool3(100,200)}}p>
    5. <a :href="url|tool4">百度a>
    6. <button @click="change1">{{a}} button>
  • 计算属性computed

    当与computed中的函数有关联的数据发生改变时 函数就会重新计算,如果不变函数就不会重新执行。

    与methods区别:如果页面重新渲染时会执行methods中的函数,这个函数会执行,但是computed不会。

    可以在computed中创建一个对象x1  对象中有两个函数set,get

    当其他函数执行时如果有this.x1=100等执行 就会把100传入x1中的set函数当做参数然后执行

    1. computed: {
    2. age() {
    3. console.log("计算属性");
    4. return new Date().getFullYear()-new Date(this.birth).getFullYear()
    5. },
    6. x1:{
    7. get(v){
    8. console.log(v,1111);
    9. return new Date().getFullYear()-new Date(this.birth).getFullYear()
    10. },
    11. set(v){
    12. console.log(v,11);
    13. // this._x=v
    14. this.birth=`${2022-v-02-03}`//birth在这里变化 get函数会重新计算
    15. }
    16. }
    17. }


    属性侦听器:

    写法watch:{}

    在watch中写入一个data中的数据  ,这个数据当做函数名写一个函数

    当这个数据变化时 函数就会执行 函数的第一个参数是变化后的值,第二个参数是变化前的值

    1. watch:{
    2. // 侦听器属性 必须和data中的数据同名
    3. n(arg1,arg2){//n变化了 此函数就执行 arg1变化后的值 arg2变化前的值
    4. console.log(arg1,arg2);
    5. if(this.n>120){
    6. alert("超过了")
    7. }else{
    8. console.log("还好");
    9. }
    10. },
    11. obj(){
    12. deep:true//深度监听
    13. console.log("obj改变了");
    14. }
    15. }

  • 相关阅读:
    C++实现集群聊天服务器
    Vue模板语法(下)
    1.6 - CPU组成
    史上最强,Jmeter性能测试-性能场景设计实例(详全)
    基于C++的微流控生物芯片模拟程序设计
    DDD诊所——异步事件综合征
    查询优化器:RBO与CBO
    redis数据库基础知识
    Python Day6列表进阶【零基础】
    父组件给子组件传值动态传入的值一直显示的都是第一次传入的值,vue子组件监听父组件的传值
  • 原文地址:https://blog.csdn.net/m0_63964179/article/details/126797394