父组件中,首先给子组件绑定ref="child"
点击父组件的view标签,触发openPopup,在该方法中,通过调用this.$refs.child.Popup();将事件传递给子组件的Popup事件,实现父组件触发子组件的方法。

  1. 父组件
<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();
},
  1. 子组件
<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')
},
Logo

基于 Vue 的企业级 UI 组件库和中后台系统解决方案,为数万开发者服务。

更多推荐