vue3子父组件之间的调用

news/2024/7/21 20:26:01 标签: 前端, defineProps, defineExpose, vue3, 子父组件

子组件:

capacityIndex.vue

父组件:

   index.vue

A.子组件获取父组件属性

1.在父组件中引用子组件

import capacityIndex from "./capacityIndex";
<capacityIndex :tankInfo="tankInfo" :deviceNameInfo="deviceNameInfo" ref="sonMethodRef"></capacityIndex>

其中tankInfo和device Name Info为子组件需要的属性

2.子组件接收父组件传递的属性

const props = defineProps({
  // 油罐编号
  tankInfo: {
    type: String,
    default: ""
  },
  // 液位仪编号
  deviceNameInfo: {
    type: String,
    default: ""
  },
})

3.子组件调用属性

/** 查询罐容信息列表 */
function getList() {
  loading.value = true;
  queryParams.value.tankId = props.tankInfo;
  queryParams.value.deviceName = props.deviceNameInfo;
  listTankCapacity(queryParams.value).then(response => {
    tankCapacityList.value = response.rows;
    total.value = response.total;
    loading.value = false;
  });
}

其中props.tankInfo就是调用了传递过来的参数。

B.父组件调用子组件方法

1.父组件调用子组件时定义ref为sonMethodRef

<capacityIndex :tankInfo="tankInfo" :deviceNameInfo="deviceNameInfo" ref="sonMethodRef"></capacityIndex>

2.在父组件中定义ref

const sonMethodRef = ref(null)

3.父组件调用子组件暴漏的方法

function capaCityInfo(row){
  capaCityTitle.value = "罐容信息";
  capaCityOpen.value = true;
  tankInfo.value = row.id;
  deviceNameInfo.value = row.deviceName;
  nextTick(() => {
    sonMethodRef.value.getList();
  })
}

其中

nextTick(() => {
  sonMethodRef.value.getList();
}) 就是调用的过程。

4.子组件暴漏父组件需要的方法,getList互相对应。

defineExpose({
  getList
})
function getList() {
  loading.value = true;
  queryParams.value.tankId = props.tankInfo;
  queryParams.value.deviceName = props.deviceNameInfo;
  listTankCapacity(queryParams.value).then(response => {
    tankCapacityList.value = response.rows;
    total.value = response.total;
    loading.value = false;
  });
}


http://www.niftyadmin.cn/n/5433511.html

相关文章

十五、自回归(AutoRegressive)和自编码(AutoEncoding)语言模型

参考自回归语言模型&#xff08;AR&#xff09;和自编码语言模型&#xff08;AE&#xff09; 1 自回归语言模型&#xff08; AR&#xff09; 自回归语言模型&#xff08;AR&#xff09;就是根据上文内容&#xff08;或下文内容&#xff09;预测下一个&#xff08;或前一个&…

钉钉小程序 - - - - - 如何通过一个链接打开小程序内的指定页面

方式1 钉钉小程序 scheme dingtalk://dingtalkclient/action/open_mini_app?miniAppId123&pagepages%2Findex%2Findex%3Fx%3D%25E4%25B8%25AD%25E6%2596%2587 方式2 https://applink.dingtalk.com/action/open_mini_app?type2&miniAppIdminiAppId&corpIdcorpId&…

分享一篇Oracle RAC实战安装11G

分享一次很久以前的Oracle rac项目实施。 1、拓扑结构 基础环境是2台H3C的服务器2台3PAR的双活存储&#xff0c;操作系统centos7.2。借用下别人家的拓扑先&#xff08;这是一套典型的RAC架构&#xff09;。 2、网卡TEAM操作 以eno51和en052组成Team1组为示例&#xff1a; nm…

GAMES104-现代游戏引擎 1

主要学习重点还是面向就业&#xff0c;重点复习八股和算法 每天早上八点到九点用来学习这个课程 持续更新中... 第一节 游戏引擎导论 第二节 引擎架构分层

java组合模式揭秘:如何构建可扩展的树形结构

组合模式&#xff08;Composite Pattern&#xff09;是一种结构型设计模式&#xff0c;它允许将对象组合成树形结构以表示整体/部分层次结构。组合模式使得客户端可以统一对待单个对象和组合对象&#xff0c;从而使得客户端可以处理更复杂的结构。 组合模式的主要组成部分包括&…

15 个最佳免费照片恢复软件快速恢复已删除的图像

这篇文章重点介绍了适用于 Windows 10 的 15 款最佳免费照片恢复软件。阅读整篇文章&#xff0c;了解理想的图像恢复软件。 照片可以带回所有的回忆&#xff0c;回忆起与我们所爱的人和亲密的人度过的每一个“时刻”。照片是我们永远不想失去的东西&#xff0c;但有时我们会无…

Lua中文语言编程源码-第四节,更改linit.c初始化库函数, 使Lua加载中文库关键词(与所有的基础库相关)

源码已经更新在CSDN的码库里&#xff1a; git clone https://gitcode.com/funsion/CLua.git 在src文件夹下的linit.c初始化库的函数&#xff0c;用于lua.c和其他客户端。 增加加载中文库宏名列表&#xff0c;保留英文库宏名列表。 原始的代码为&#xff1a; static const …

【系统架构设计师】系统工程与信息系统基础 01

系统架构设计师 - 系列文章目录 01 系统工程与信息系统基础 文章目录 系列文章目录 前言 一、系统工程 ★ 二、信息系统生命周期 ★ 信息系统建设原则 三、信息系统开发方法 ★★ 四、信息系统的分类 ★★★ 1.业务处理系统【TPS】 2.管理信息系统【MIS】 3.决策支持系统…