当前位置: 首页 > article >正文

简单介绍$listeners

$listeners

它可以获取父组件传递过来的所有自定义函数,如下:

// 父组件
<template>
  <div class="a">
    <Child @abab="handleAbab" @acac="handleAcac"/>
  </div>
</template>

<script>
import Child from './components/Child.vue';
export default {
  components: {
    Child
  },
  methods: {
    handleAbab(){
    },
    handleAcac(){
      
    }
  }
}
</script>

// 子组件
<template>
  <div class="cc">

  </div>
</template>

<script>
export default {
    data(){
        return{
            count: 0
        }
    },
    created(){
        console.log(this.$listeners);
        
    }
}
</script>

在这里插入图片描述

看个例子

// 父组件
<template>
  <div class="a">
    <Child @abab="handleAbab" @acac="handleAcac"/>
  </div>
</template>

<script>
import Child from './components/Child.vue';
export default {
  components: {
    Child
  },
  methods: {
    handleAbab(count){
      console.log('收到',count);
      // 模拟处理
      return new Promise((resolve) => {
        setTimeout(() => {
          resolve("error");
        }, 3000);
      });

    },
    handleAcac(){

    }
  }
}
</script>

子组件需要等待父组件处理结束后再继续操作

template>
  <div class="cc">
    <button @click="handleClick">click</button>
    <div>{{ count }}</div>
  </div>
</template>

<script>
export default {
    data(){
        return{
            count: 0
        }
    },
    methods:{
        async handleClick(){
            this.count++;
            if(this.$listeners.abab){
                const err = await this.$listeners.abab(this.count);
                console.log(err);
                
            }
        }
    }
}
</script>

在这里插入图片描述


http://www.kler.cn/news/357853.html

相关文章:

  • Linux服务器安装SRAToolkit教程
  • 3D Gaussian Splatting前向渲染代码解读
  • 鸿蒙网络编程系列28-服务端证书锁定防范中间人攻击示例
  • JavaWeb环境下的Spring Boot在线考试系统开发
  • LiveKit 在Kylin Server V10 下离线安装和配置
  • DataWhale10月动手实践——Bot应用开发task02学习笔记
  • 基于基于jsp+mysql+Spring+mybatis的SSM汽车保险理赔管理系统设计和实现
  • bash之基本运算符
  • 【大模型问答测试】大模型问答测试脚本实现(第二版)——接入pytest与代码解耦
  • nginx代理配置,搞定proxy_pass配置
  • 选择、冒泡和插入排序及其优化版本课件
  • AI 3D拣选系统行业分析:物流行业是最主要的需求来源
  • github学生认证(白嫖copilot)-Why are you not on campus?不在校园内
  • 考研前所学c语言02(2024/10/16)
  • Lazarus Query转EXCEL功能
  • 网络编程(21)——通过beast库快速实现http服务器
  • vite详解及代码案例
  • 阿里云盘企业版收费标准,不同人数、存储空间版本是有区别的
  • 什么是堡垒机 ?安全为什么需要堡垒 ?
  • 未来汽车究竟该是什么样子?