vue父页面调用子页面及方法及传参,鼠标光标定位
创始人
2024-05-02 07:34:18
0

项目场景:

vue父页面调用子页面及方法


问题描述

vue中父界面调用子界面及方法时界面可以调用,但是调用方法的时候第一次报错,但是关掉界面再次重新打开就没问题了


原因分析:

在我之前添加鼠标指针定位的时候,如果在当前页面可以直接定位,但是如果在el-dialog弹出框里展示定位鼠标光标的话就会实现不了,原因是需要设置setTimeout(() => { }, 200) 延迟因为我直接找的解决方案所以原因没有过于去看,但是我分析应该是方法执行的太快,在界面打开之前就已经获取了,但是界面没打开所以无法获取位置,导致方法失败,于是我加在了调用子界面方法上解决了


解决方案:

1.首先是将子界面引入到父界面然后使用components自定义组件

   (1) import CardRecharge from "../xxxxx/xxxxx.vue";

   (2) components: {
            CardRecharge,
        },

2.,调用子界面的代码,

  

 
                            
            
        

3.这里是给子界面传入选择数据字段,需要配合第一步的:CARD_NO="select_Bed_Ary.CARD_NO"使用,这个是方法传参,也可以将数据放到缓存中传参

    const handleClick = function(row, event, column) {

_this.select_Bed_Ary.CARD_NO=row.CARD_NO,}

4.这里是调用子界面的方法

	const pFication =ref(null);const pFicationOnSave = function(){setTimeout(() => {_this.patInfDialogVisible=false;_this.getCardDate();}, 200)}const onAvatar=function(item,state){if(state == '1'){_this.select_Bed_Ary=item;pFication.value.getEssentialInform()_this.patInfDialogVisible=true;pFication.value.ClearScreen()}else{_this.patInfDialogVisible=true;
//这里就是添加了延时调用自界面方法setTimeout(() => {pFication.value.getEssentialInform() }, 200)}};

5.以上是父级界面代码。

子界面代码

1.使用props传值这个介绍可以看这个连接

vue中组件的props属性(详)_suoh's Blog的博客-CSDN博客_vue props

将父界面值传过来加到调用的方法作为传递的参数

然后使用语法糖暴露一下子页面的方法让父界面调用

    // 父组件调用子组件时的方法暴漏
            defineExpose(()=>{
                getEssentialInform,
                ClearScreen,
                Recharge
            }); 

以上就是vue3父界面调用子界面,传参的方法和遇到的问题的解决方案,只总结个人情况,解决参考

附加鼠标光标定位:

 

五、vue3.0之组件通信详解(defineProps、defineEmits、defineExpose)_arguments_zd的博客-CSDN博客_defineprops

 第三张图片是条件满足之后执行光标定位,我这里是当el-dialog弹出框打开的时候定位到某个输入框,根据需求设置

以上就是我的总结,感谢观看。

相关内容

热门资讯

【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
AWSECS:访问外部网络时出... 如果您在AWS ECS中部署了应用程序,并且该应用程序需要访问外部网络,但是无法正常访问,可能是因为...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
AWSElasticBeans... 在Dockerfile中手动配置nginx反向代理。例如,在Dockerfile中添加以下代码:FR...
北信源内网安全管理卸载 北信源内网安全管理是一款网络安全管理软件,主要用于保护内网安全。在日常使用过程中,卸载该软件是一种常...
AsusVivobook无法开... 首先,我们可以尝试重置BIOS(Basic Input/Output System)来解决这个问题。...
月入8000+的steam搬砖... 大家好,我是阿阳 今天要给大家介绍的是 steam 游戏搬砖项目,目前...
​ToDesk 远程工具安装及... 目录 前言 ToDesk 优势 ToDesk 下载安装 ToDesk 功能展示 文件传输 设备链接 ...