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

vue3 组合式API获取子组件的属性和方法

  1. 在vue2中,获取子组件实例的方法或者属性时,父组件直接通过ref即可直接获取子组件的属性和方法,如下:

    // father.vue
    <child ref="instanceRef" />
    this.$ref['instanceRef'].testVal
    this.$ref['instanceRef'].testFunc()
    // child.vue
    data () {return {testVal: '来自子组件的属性'}
    },
    methods: {testFunc() {return '来自子组件的方法'}
    }
    
  2. 在vue3 组合式API中,在子组件使用defineExpose指定需要暴露的属性和方法,父组件才可以通过ref获取到子组件的属性和方法,如下:

    // father.vue
    <script setup lang="ts">
    import ChildInstance from "@/views/component/father-instance/child-instance.vue";
    import { ref } from "vue";const instanceRef = ref(null);
    const getChildInstance = () => {const childInstance = instanceRef.value; // 通过ref获取子组件实例console.log(childInstance.childValue);console.log(childInstance.childFunc());
    };
    </script><template><ChildInstance ref="instanceRef" /><el-button @click="getChildInstance">获取子组件属性和方法</el-button>
    </template><style scoped lang="scss"></style>
    // child.vue
    <script setup lang="ts">
    import { ref, defineExpose } from "vue";const childValue = ref("来自子组件的属性");
    const childFunc = () => {return "来自子组件的方法";
    };
    // 使用defineExpose指定需要暴露的属性和方法
    defineExpose({childValue,childFunc
    });
    </script><template><div>来自子组件</div>
    </template><style scoped lang="scss"></style>

相关文章:

vue3 组合式API获取子组件的属性和方法

在vue2中&#xff0c;获取子组件实例的方法或者属性时&#xff0c;父组件直接通过ref即可直接获取子组件的属性和方法&#xff0c;如下&#xff1a; // father.vue <child ref"instanceRef" /> this.$ref[instanceRef].testVal this.$ref[instanceRef].testFun…...

[数据结构+算法] 给一棵树和一个sum,判断是否存在从root到叶子结点的path之和等于sum?

[数据结构算法] 给一棵树和一个sum&#xff0c;判断是否存在从root到叶子结点的path之和等于sum&#xff1f; 可以使用两种方法求解 递归 CheckTreeSumRecursive 问题转换为递归判断左右子树是否满足路径和等于sum减去当前节点的值。 迭代 CheckTreeSumNonRecursive 使用两个…...

非阿里云注册域名如何在云解析DNS设置解析?

概述 非阿里云注册域名使用云解析DNS&#xff0c;按照如下步骤&#xff1a; 添加域名。 添加解析记录。 修改DNS服务器。 DNS服务器变更全球同步&#xff0c;等待48小时。 添加解析记录 登录云解析DNS产品控制台。 在 域名解析 页面中&#xff0c;单击 添加域名 。 在 …...

微服务-微服务Alibaba-Nacos注册中心实现

1. 系统架构的演变 俗话说&#xff0c; 没有最好的架构&#xff0c;只有最合适的架构。 微服务架构也是随着信息产业的发展而出现的最有普 遍适用性的一套架构模式。通常来说&#xff0c;我们认为架构发展历史经历了这样一个过程&#xff1a;单体架构——> 垂直架构 ——&g…...

多符号表达式的共同子表达式提取教程

生成的符号表达式&#xff0c;可能会存在过于冗长的问题&#xff0c;且多个符号表达式中&#xff0c;有可能存在相同的计算部分&#xff0c;如果不进行处理&#xff0c;计算过程中会导致某些算式计算多次&#xff0c;从而影响计算效率。 那么多个符号表达式生成函数时&#xf…...

Java 反射获取属性名、属性类型、属性值、判断属性类型

1.代码 /*** 通过反射获取对象属性名、属性类型、属性值** param t 需要反射的对象* author hcx*/public static <T> void reflect(T t){// 获取所有属性// getDeclaredFields 不包含父类&#xff0c;包含私有属性// getFields 包含父类属性Field[] fields t.getClass(…...

Docker私有仓库搭建

目录 1.registry私有仓库 拉取registry镜像 修改docker配置文件并重启 运行registry容器 修改想要上传的镜像的标签并上传验证 再另一台主机上获取此镜像 浏览器验证 2.Docker--harbor私有仓库部署与管理 什么是Harbor Harbor的特性 Harbor的构成 Harbor部署 准备…...

C语言第十三弹---VS使用调试技巧

✨个人主页&#xff1a; 熬夜学编程的小林 &#x1f497;系列专栏&#xff1a; 【C语言详解】 【数据结构详解】 VS调试技巧 1、什么是bug 2、什么是调试&#xff08;debug&#xff09;&#xff1f; 3、Debug和Release​编辑​ 4、VS调试快捷键 4.1、环境准备 4.2、调试…...

AST反混淆实战-jsjiamiv7最高配置

js加密混淆网站 https://www.jsjiami.com/一、混淆demo生成 01 打开目标网址 https://www.jsjiami.com/ 02 按照顺序加密混淆二、混淆前后demo 混淆前的源码 (function(w, d) { w.update "2023年01月17日05:34:29更新"; d.info "本站历时1年半研发的新版本V7…...

colorThief+vite+react使用方法

官网: Color Thief npm i --save colorthief 第一种,import载入图片 经过尝试,在vite中,要引入.mjs版本 import ColorThief from colorthief/dist/color-thief.mjs 第一种,通过import载入图片 import aa from /assets/123.jpgconst [resultColor,setResultColor]useState() …...

Hive(15)中使用sum() over()实现累积求和和滑动求和

目的&#xff1a; 三个常用的排序函数row_number(),rank()和dense_rank()。这三个函数需要配合开窗函数over()来实现排序功能。但over()的用法远不止于此&#xff0c;本文咱们来介绍如何实现累计求和和滑动求和。 1、数据介绍 三列数据&#xff0c;分别是员工的姓名、月份和…...

2024年Java搭建面试题

2024年Java实战面试题&#xff08;北京&#xff09;_java 5 年 面试-CSDN博客 1、搭建docker容器 # 安装依赖的环境 yum -y install yum-utils device-mapper-persistent-data lvm2 # 设置镜像源为阿里 yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/lin…...

二维数组的学习

前言 在前面我们学习了一维数组&#xff0c;但是有的问题需要用二位数组来解决。 二维数组常称为矩阵&#xff0c;把二维数组写成行和列的排列形式&#xff0c;可以有助于形象化的理解二维数组的逻辑结构。 一、二维数组的定义 二维数组定义的一般格式&#xff1a; 数据类型 数…...

Java集合(List集合)

什么是集合&#xff1f; 什么是集合&#xff1f;集合就是“由若干个确定的元素所构成的整体”&#xff0c;在程序中&#xff0c;一般代表保存 若干个元素&#xff08;数据&#xff09;的某种容器类。 在Java中&#xff0c;如果一个Java对象可以在内部持有&#xff08;保存&…...

7、Json文件的操作总结【robot framework】

1、JSONLibrary简介 Robot Framework 是一种通用的自动化测试框架&#xff0c;它支持使用关键字驱动的测试&#xff0c;并且易于学习和使用。Robot Framework 提供了丰富的标准库&#xff0c;而 JSONLibrary 就是其中之一&#xff0c;用于处理 JSON 数据。 安装 JSONLibrary 在…...

python 循环解压 解压多重压缩包

在实际数据中&#xff0c;经常会有压缩包套压缩包的情况&#xff0c;并且有可能出现“zip”压缩包下面套“tar”的可能。 你可以运行后面的代码&#xff0c;来完成自动解压。代码会不断检查folder_a_path 文件夹下是否还有压缩包。目前支持zip、rar、tar、7z等四种格式的压缩文…...

基于C#制作一个连连看小游戏

基于C#制作一个连连看小游戏,实现:难易度选择、关卡选择、倒计时进度条、得分计算、音效播放等功能。 目录 引言游戏规则开发环境准备游戏界面设计游戏逻辑实现图片加载与显示鼠标事件处理游戏优化与扩展添加关卡与难度选择说明</...

Android-System 根据包名查找已安装应用apk方法

1、根据包名查找应用的安装路径 dumpsys package packageName | grep Path 例如&#xff1a; kona:/ # dumpsys package com.yw_pt.oshnoh | grep PathcodePath/data/app/com.yw_pt.oshnoh-N4rPqGh58weRjMpA1q3evwresourcePath/data/app/com.yw_pt.oshnoh-N4rPqGh58weRjMpA1q3…...

洛谷-P4124题-手机号码-Java

题目 题目链接&#xff1a; https://www.luogu.com.cn/problem/P4124 分析 给定两个长度为11位的数字&#xff0c;代表两个区间 [L,R] 需要编写程序来计算出&#xff0c;这两个区间内满足要求的数字个数。这样的题一般来说就是数位dp题。首先我们可以根据容斥原理 [0,R]中满…...

仅使用 Python 创建的 Web 应用程序(前端版本)第08章_商品详细

在本章中,我们将实现一个产品详细信息页面。 完成后的图像如下。 Model、MockDB、Service都是在产品列表页实现的,所以创建步骤如下。 No分类内容1Page定义PageId并创建继承自BasePage的页面类2Application将页面 ID 和页面类对添加到 MultiPageApp 的页面中Page:定义PageI…...

避坑指南:Qt菜单栏triggered信号连接的5个常见错误及解决方法

Qt菜单栏triggered信号连接的5个实战避坑指南 在Qt开发中&#xff0c;菜单栏作为用户交互的重要组件&#xff0c;其点击事件处理看似简单却暗藏玄机。许多开发者都曾掉进过信号槽连接失效、内存泄漏或窗口阻塞的陷阱里。今天我们就来剖析这些高频问题背后的原因&#xff0c;并提…...

gallery应用商店优化:提升本地AI平台的发现率与下载量

gallery应用商店优化&#xff1a;提升本地AI平台的发现率与下载量 【免费下载链接】gallery A gallery that showcases on-device ML/GenAI use cases and allows people to try and use models locally. 项目地址: https://gitcode.com/GitHub_Trending/gallery44/gallery …...

Webpack Tree Shaking配置终极指南:如何在Awesome-Webpack中优化现代前端项目

Webpack Tree Shaking配置终极指南&#xff1a;如何在Awesome-Webpack中优化现代前端项目 【免费下载链接】awesome-webpack A curated list of awesome Webpack resources, libraries and tools 项目地址: https://gitcode.com/gh_mirrors/aw/awesome-webpack Webpack …...

基于Matlab APP Designer的GNSS数据质量分析工具开发实践

1. 为什么选择Matlab APP Designer开发GNSS分析工具 第一次接触GNSS数据质量分析时&#xff0c;我和大多数初学者一样&#xff0c;面对密密麻麻的RINEX文件头大如斗。当时实验室的师兄随手甩给我一个Matlab脚本&#xff0c;说"自己改改就能用"。结果光是理解那些没有…...

Linux文件系统探秘:当你删除一个文件时,inode位图究竟发生了什么变化?

Linux文件系统探秘&#xff1a;当你删除一个文件时&#xff0c;inode位图究竟发生了什么变化&#xff1f; 在Linux系统中&#xff0c;删除文件看似是一个简单的操作&#xff0c;但背后却隐藏着一系列精密的元数据操作。对于系统开发者和运维人员而言&#xff0c;理解这一过程不…...

避坑指南:用SwinUnet跑通Synapse医学图像分割,我踩过的那些环境与数据坑

SwinUnet医学图像分割实战避坑指南&#xff1a;从环境配置到模型测试的完整解决方案 第一次接触SwinUnet进行医学图像分割时&#xff0c;我像大多数初学者一样&#xff0c;满怀信心地克隆了GitHub仓库&#xff0c;准备大展身手。然而现实很快给了我一记重击——从Python版本冲突…...

告别阻塞!Python asyncio子进程通信全攻略(含ls/echo等实例代码)

Python异步编程实战&#xff1a;asyncio子进程通信深度解析 在当今高并发的开发环境中&#xff0c;传统的同步子进程调用方式已经成为性能瓶颈的罪魁祸首。想象一下&#xff0c;当你的Python应用需要同时处理数十个外部命令调用时&#xff0c;那些无谓的等待时间会让整个系统的…...

信号量实战:多进程协同操作有限缓冲区的伪代码精解

1. 信号量机制与生产者-消费者模型 想象一下餐厅后厨的场景&#xff1a;厨师&#xff08;生产者&#xff09;不断制作菜品&#xff0c;服务员&#xff08;消费者&#xff09;将菜品端给顾客。如果厨师做菜太快&#xff0c;服务员来不及端走&#xff0c;菜品就会堆积&#xff1b…...

ILI9341 TFT驱动库:嵌入式HMI全栈图形解决方案

1. 项目概述ILI9341_LTSM 是一款面向 Arduino 生态系统的 C 驱动库&#xff0c;专为 ILI9341 控制芯片的 SPI 接口 TFT LCD 显示屏设计。该库并非仅提供基础初始化与像素写入功能&#xff0c;而是构建了一套完整的嵌入式图形子系统&#xff0c;覆盖从底层硬件抽象、图形绘制、字…...

到底什么是 TCP 连接:从三次握手到四次挥手,从数据结构到状态机

到底什么是 TCP 连接&#xff1a;从三次握手到四次挥手&#xff0c;从数据结构到状态机01. 前言&#xff1a;每天都在用&#xff0c;却说不清它是什么02. 一句话定义03. TCP 连接不是物理的&#xff0c;而是逻辑的04. TCP 连接的核心标识&#xff1a;四元组05. TCP 连接在内核中…...