![gfdgd](https://img-cdn-tc.dcloud.net.cn/account/identicon/0a73df76f17b3a6dd62cf50dee12d380.png)
gfdgd
- 发布:2022-06-15 16:56
- 更新:2022-09-19 19:46
- 阅读:4720
![DCloud_UNI_WZF](http://img-cdn-tc.dcloud.net.cn/uploads/avatar/002/06/35/86_avatar_mid.jpg?v=1653880531)
这样试下
<script setup lang="ts">
import {onMounted,getCurrentInstance} from 'vue';
onMounted(() => {
const instance = getCurrentInstance().proxy
const eventChannel = instance.getOpenerEventChannel();
console.log('eventChannel',eventChannel)
eventChannel.emit('acceptDataFromOpenedPage', {data: 'data from test page'});
eventChannel.emit('someEvent', {data: 'data from test page for someEvent'});
// 监听acceptDataFromOpenerPage事件,获取上一页面通过eventChannel传送到当前页面的数据
eventChannel.on('acceptDataFromOpenerPage', function(data) {
console.log('acceptDataFromOpenerPage',data)
})
})
</script>
gfdgd (作者)
后期 会不会放到 @dcloudio/uni-app里面 类似import {onLoad,onShow} from "@dcloudio/uni-app"; 这样引入
2022-06-16 10:15
DCloud_UNI_WZF
回复 gfdgd: 不确定
2022-06-16 10:21
gfdgd (作者)
回复 DCloud_UNI_WZF: 那文档上应该说明吧 不然找都找不到 而且vue官方也不建议滥用getCurrentInstance
https://v3.cn.vuejs.org/api/composition-api.html#getcurrentinstance
2022-06-16 10:55
DCloud_UNI_WZF
回复 gfdgd: 这属于vue3 使用过程中的东西,不会在 uni-app 文档中特殊说明
2022-06-16 20:26