vue3中一个组件调用另外一个组件的方法

2023-11-10

vue3中一个组件调用另外一个组件的方法

1,组件化开发是vue的比较常用的,这里简单写一个vue3的组件化开发demo案例

组件1

<template>
  <el-button type="primary" @click="externalAdd">外部组件函数</el-button> // 外部组件点击函数
  <Add ref="addInfo" :type="type"></Add> //外部组件
</template>
<script>

import { onMounted, onUnmounted, reactive, ref, toRefs } from "vue"; //引入需要用的vue
import { ElMessage } from "element-plus";
import Add from "@/components/addcl.vue"; //在当前页面引入外部组件页面
export default {
  name: "demo",
  components: {
    Add, //注册外部组件
  },
}
  setup() {
    const addInfo = ref(null); //获取组件的ref
 }
 const state = reactive({
	type: "add",
 })
 const externalAdd = () => {
  state.type = "add";
  addInfo.value.open(); //获取到ref后,调用add组件中定义好的函数
};
  return {
    ...toRefs(state),
    addInfo //ref
  };

组件2

<template>
  <el-dialog
    :title="type == 'add' ? '添加' : '修改'"
    v-model="visible"
    width="400px"
  >
	//内容
  </el-dialog>
</template>
<script>
import { reactive, ref, toRefs } from 'vue'
import { ElMessage } from 'element-plus'
export default {
  name: 'demo1',
  props: {
    type: String, //prpos 接收传过来的参数 type
  },
  setup(props) {
  //props里也会有你传过来的参数
	const state = reactive({
      visible: false,
    })
 }
}
//开启弹窗函数
 const open = (id) => {
   state.visible = true;
   if (id)  // 修改 
   else // 添加
 }
 return {
  ...toRefs(state),
  open,
}

希望此文章能帮助到你

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

vue3中一个组件调用另外一个组件的方法 的相关文章

  • Nginx HTTPS实践

    Nginx HTTPS实践 文章目录 Nginx HTTPS实践 1 HTTPS基本概述 1 1 为何需要HTTPS 1 2 什么是HTTPS 1 3 TLS如何实现加密 2 HTTPS实现原理 2 1 加密模型 对称加密 2 2 加密模型

随机推荐

  • 用matlab编程实现对图像的均值滤波,中值滤波和拉普拉斯算子锐化

    1 均值滤波 均值滤波 用包含在滤波掩模邻域内的像素的平均灰度值去代替每个像素点的值 用途 用于模糊处理和减少噪声 盒滤波器 加权平均滤波器 均值滤波 clc close all clear all I rgb2gray imread fi
  • java编程练习

    package HomeWork05 import java util Scanner public class HomeWork05 public static void main String args Scanner sc new S
  • PAMI19 - 强大的级联RCNN架构《Cascade R-CNN: High Quality Object Detection and Instance Segmentation》

    文章目录 原文 初识 相知 Challenge to High Quality Detection Cascade RCNN 与相似工作的异同 扩展到实例分割 回顾 参考 原文 https arxiv org pdf 1906 09756
  • springboot框架中使用websocket传输内容过长的问题解决

    很多业务中使用websocket进行前后台的长连接 一般情况下用作及时性消息推送等 而一旦传输内容过长 例如传输一些图片音频的base64编码之类的 很容易出现过长问题 甚至不提示问题直接截断乃至丢失数据 解决方法如下 很多人网上查阅方法会
  • 【算法 -- LeetCode】(026)删除有序数组中的重复项

    1 题目 给你一个 升序排列 的数组 nums 请你 原地 删除重复出现的元素 使每个元素 只出现一次 返回删除后数组的新长度 元素的 相对顺序 应该保持 一致 然后返回 nums 中唯一元素的个数 考虑 nums 的唯一元素的数量为 k
  • CORDIC算法详解及FPGA实现

    CORDIC算法详解 1 平面坐标系旋转 CORDIC算法的思想是通过迭代的方法 使得累计旋转过的角度的和无限接近目标角度 它是一种数值计算逼近的方法 运算只有移位和加减 通过圆坐标系可以了解CORDIC算法的基本思想 如图1所示 初始向量
  • 线边仓

    SAP线边库管理 是又叫WIP仓 或叫线上仓 举例来说 一卷线材 总长303米 工单需用100米 于是发料发出303米 也就是一卷 其中100米上生产线 另外203米进入这个WIP仓 下次领料直接从WIP仓发出去 管控非常到位 具体操作就要
  • 11月20日 作业3 生命药剂,角色蓝图修改

    具体太麻烦了 我直接贴代码了 SPowerUp Actor h Fill out your copyright notice in the Description page of Project Settings pragma once i
  • 录屏没有声音?录制声音,3招教你搞定

    在录制屏幕内容时 声音是不可或缺的要素之一 可以有效地增强录制视频的表现力和传达效果 然而 有时候可能会遇到录屏没有声音的情况 这可能会让录制的视频失去一部分重要信息 本文将为您介绍录屏录声音的3种方法 帮助您解决录屏没有声音的问题 实现高
  • esp和ebp详解

    我的理解 国外一个比较好的汇编网站 http www tenouk com Bufferoverflowc Bufferoverflow1b html http blog sina com cn s blog c3bab4650101ogf
  • Python游戏开发入门3 Pygame屏幕绘制机制

    目录 屏幕控制 幕控制需求 幕控制的重要函数 幕模式函数 幕设置为大小可调 幕设置为全屏 幕信息函数 小游戏 伸缩型 屏幕控制 幕控制需求 幕控制的重要函数 幕模式函数 pygame display set mode r 0 0 flags
  • 【Python】bokeh画图工具库

    bokeh是python中一款基于网页的画图工具库 画出的图像以html格式保存 https blog csdn net tankloverainbow article details 80442289
  • java web期末复习_JAVAWEB期末复习题库

    JAVAWEB期末复习题库 javaweb期末复习题库 jsp Servlet 1 当访问一个Servlet时 以下Servlet中的哪个方法先被执行 D A destroy B doGet C service D init0 2 假设在m
  • [rt-thread nano] 添加串口rt-printf打印

    硬件 gd32f303 宏定义 定义宏定义 define RT USING CONSOLE define RT USING DEVICE define RT CONSOLE DEVICE NAME uart1 输出 ifdef RT USI
  • MySQL链接错误

    com mysql jdbc exceptions jdbc4 CommunicationsException Communications link failure package com spark import java sql Co
  • hdu 5818 Joint Stacks 2016 Multi-University 7

    Problem acm hdu edu cn showproblem php pid 5818 官方题解 bestcoder hdu edu cn blog 2016 multi university training contest 7
  • error:Target dll has been cancelled.debugger aborted

    MDK4 23调试裸机程序 出现这个问题先记下 以前成功调试过的 这次用又不会了 找一下以前的文章 今天开始摸索MDK高版本调试S3C2440裸机程序 3 4版本的实质上是借用Jlink的软件JLinkARM dll和JLinkRDI dl
  • org.yaml.snakeyaml.scanner.ScannerException: mapping values are not allowed here

    在springCloud网关启动时报了这样一个错 大概意思是 映射不允许在这 最后发现时yml文件里 处id uri predicates 以及filter没有对齐 他们是同级的 报这个错一般是配置文件里路由没配置好
  • qt exec 跟show的区别

    1 要理清两个函数的区别 首先需要理解窗口模式 模式窗口 窗口会原地阻塞 只能操作该窗口 其余窗口不能再操作 只有关闭该窗口后 代码处才会获得返回值 阻塞停止 就可以操作其它界面了 半模式窗口 窗口会原地伪阻塞 虽然也是只能操作该窗口 其余
  • vue3中一个组件调用另外一个组件的方法

    vue3中一个组件调用另外一个组件的方法 1 组件化开发是vue的比较常用的 这里简单写一个vue3的组件化开发demo案例 组件1