父组件中,首先给子组件绑定ref="child"
点击父组件的view标签,触发openPopup,在该方法中,通过调用this.$refs.child.Popup();将事件传递给子组件的Popup事件,实现父组件触发子组件的方法。
- 父组件
<view class="panel-list-item" @click="openPopup">
<text>联系客服</text>
<uni-icons type="arrowright" size="15"></uni-icons>
</view>
<my-qrcode ref="child"></my-qrcode>
openPopup(){
// this.$refs.popup.open('top')
this.$refs.child.Popup();
},
- 子组件
<template>
<view class="qr-container">
<uni-popup ref="popup" type="center">
<view class="pop-box">
<view class="pop-box-inner">
<p>扫码关注</p>
<image :src="qrSrc" mode='widthFix'/>
</view>
</view>
</uni-popup>
</view>
</template>
Popup(){
console.log("父组件触发了子组件的方法!")
this.$refs.popup.open('top')
},
本文介绍了如何在Vue.js中,通过`ref`属性将事件从父组件传递给子组件,展示了如何在父组件点击事件中调用子组件的`Popup`方法。重点在于理解父子组件间的通信和事件处理。

2万+

被折叠的 条评论
为什么被折叠?



